हमारे पास कुछ मॉड्यूल हैं जहां हमने यह किया है और जो हमने अनिवार्य रूप से किया है वह है:
- मॉड्यूल के लिए एक गिट रेपो सेटअप करें।
- इस मॉड्यूल को उत्पादन साइट के कोडबेस में तैनात करें और सब कुछ शामिल करें:
- नरम-लिंक modman द्वारा बनाई गई
- .Modman निर्देशिका जो क्लोन मॉड्यूल रिपॉजिटरी का निर्माण करती है
- इसे अन्य संस्करणों और / या देव परिवेश और परीक्षण के लिए "तैनात" करने के लिए मोडमैन का उपयोग करें।
इसे इस तरह करने से आपको मॉड्यूल विकास के लिए आवश्यक लचीलापन प्राप्त होता है, साथ ही साथ एकल साइट पर कोड को भी संस्करणित करता है, और यदि आप एकल-साइट कोडबेस में मॉड्यूल में परिवर्तन करते हैं, तो आप सीधे मॉड्यूल रिपॉजिटरी में वापस आ सकते हैं। रेपो वहाँ है .Modman निर्देशिका में।
अद्यतन:
जब मैंने मूल रूप से यह लिखा था तो मैं अपने जवाब में इस बात को ध्यान में रखने में विफल रहा कि Git (उप) मॉड्यूल को एक रिपॉजिटरी के लिए प्रतिबद्ध होने की अनुमति नहीं देता है, इस मामले में "सब कुछ" करने के लिए कुछ विस्तार की जरूरत है!
संयोग से, ऐसा इसलिए है क्योंकि मैंने एसवीएन द्वारा रखे गए प्रोडक्शन कोडबेस में गिट रिपोज में रखे गए मॉड्यूल्स को तैनात करने के लिए मोडमैन का इस्तेमाल करते हुए इसे अधिक बार किया है ... और सबवर्सन के पास पूरे जीएसटी पेड़ को वीसीएस में रखने से रोकने के लिए कोई स्क्रब नहीं है।
तो यहाँ जाता है ...
यदि आप उत्पादन साइट के कोड को घर पर लाने के लिए SVN का उपयोग कर रहे हैं, तो आपको कोई समस्या नहीं होनी चाहिए क्योंकि सबवर्सन में (व्यावहारिक रूप से) उप-मॉड्यूल की कोई अवधारणा नहीं है। यह बुरा नहीं होगा
यदि आप उत्पादन साइट के कोड के लिए Git का उपयोग कर रहे हैं, तो आपको साइट के कोड रिपॉजिटरी में "सब कुछ करने के लिए" सब-मॉड्यूल का उपयोग करना होगा। कुछ इस तरह क्लोन करने के लिए modman का उपयोग करने के बाद:
modman clone ssh://git@bitbucket.org/<user>/<repo>.git
आप इसे उप-मॉड्यूल के रूप में भी जोड़ना चाहेंगे:
git submodule add ssh://git@bitbucket.org/<user>/<repo>.git .modman/<repo>
एक बार जब आप ऐसा कर लेते हैं, तो आपको सूचकांक में .modman निर्देशिका और .gitmodules फ़ाइल को जोड़ने और इसे करने में सक्षम होना चाहिए।
रिपॉजिटरी को क्लोन करने के बाद, जो मॉडेम के माध्यम से इन मॉड्यूल का उपयोग कर रहा है, बस सबमॉड्यूल्स को अपडेट करें और अपडेट करें:
git submodule init
git submodule update
पुनश्च मैं अब सभी नए प्रोजेक्ट्स पर Git पूर्णकालिक का उपयोग करता हूं, इसलिए उम्मीद है कि यह ओवरसाइट फिर से नहीं होगा। क्षमा करें दोस्तों। ;)