महीनों से मैं वर्डप्रेस वेबसाइट के विकास के लिए git संस्करण नियंत्रण का उपयोग करने के लिए एक अच्छी परियोजना संरचना की योजना बना रहा हूं जो WP डैशबोर्ड के माध्यम से कोर और प्लगइन्स को अपडेट करने की क्षमता का त्याग नहीं करता है, इसके लिए एक अपरंपरागत निर्देशिका संरचना (wp) की आवश्यकता नहीं होती है WP पेरेंट फोल्डर के बाहर) और वह पूरी वेबसाइट्स को मैनेज और डिले करने में आसान है। मैंने सबमॉड्यूल्स, सबट्रीड्स, नेस्टेड रिपोज आदि के बारे में पढ़ा है, और मुझे अभी भी एक कठिन समय मिल रहा है कि यह सब एक साथ फिट हो और सही रणनीति का चुनाव करें।
यहाँ मैं अभी सोच रहा हूँ, अपने विचारों के साथ कि मैं कोष्ठक में git repos को कैसे संभालूँगा।
root (main project repo)
|-- wordpress (public git repo added as subtree)
| |-- wp-content
| | |-- plugins
| | | |-- my-custom-plugin (git repo added as subtree)
| | | |-- other-plugin-with-git-repo (git repo added as subtree)
| | | +-- other-plugin-without-git-repo (ignored/untracked)
| | |-- themes
| | | |-- my-custom-theme (git repo added as subtree)
| | | |-- other-theme-with-git-repo (git repo added as subtree)
| | | +-- other-theme-without-git-repo (ignored/untracked)
| | +-- uploads (ignored/untracked)
| |-- wp-admin
| +-- wp-includes
|-- wp-config.php (ignored/untracked)
+-- other-files.txt
यह मुझे कई समस्याओं / प्रश्नों के साथ छोड़ देता है;
स्वचालित अद्यतन; मुझे नए ऑटो अपडेट फीचर पसंद हैं, यह संभवतः मेरी साइटों को अपडेट और सुरक्षित रखने में बहुत समय और प्रयास बचा सकता है, लेकिन ऐसा लगता है कि यह ट्रैकिंग कोड परिवर्तन में एक रिंच को गिट के साथ फेंकता है। क्या वर्डप्रेस कोर को ऑटो अपडेट की अनुमति देते समय मेरे कोड परिवर्तनों को ट्रैक करने का कोई तरीका है?
क्या वर्डप्रेस कोर रेपो के तहत सबट्रेसेस होने से मुझे नए कोर अपडेट्स में मर्ज करने से रोकने या वर्डप्रेस कोर रेपो में अपने बदलावों को वापस करने से रोकता है (अगर मैं कभी भी तय करूं कि मैं कोर योगदानकर्ता बनना चाहूंगा)?
ऐसे प्लगइन्स जिनके पास सार्वजनिक गिट रेपो नहीं है, उन्हें पूरी तरह से अनदेखा करने से सर्वर पर फ़ाइलों को मैन्युअल रूप से कॉपी किए बिना एक नए सर्वर पर पूरी साइट को जल्दी से क्लोन न करने की समस्या पैदा होती है। यह एक समस्या का कारण बनता है अगर मैं उस प्लगइन के कोड में परिवर्तन करना चाहता हूं जो उन परिवर्तनों को ट्रैक नहीं किया गया है और आसानी से एक प्लगइन अपग्रेड में खो सकता है।
तो, संक्षेप में, एक अच्छा git + वर्डप्रेस सेटअप क्या है जो इन समस्याओं से बचा जाता है? मैं अपनी प्रस्तावित परियोजना संरचना पर आपकी प्रतिक्रिया की सराहना करूंगा। किसी भी तरह से आप इसे बेहतर बनाने में मेरी मदद कर सकते हैं, बहुत सराहना की जाएगी!
पुनश्च, अगर इस चर्चा के लिए एक बेहतर मंच है, तो कृपया मुझे वहाँ इंगित करें।