Git Submodule
आपको एक Git रिपॉजिटरी को किसी अन्य Git रिपॉजिटरी में उपनिर्देशिका के रूप में एम्बेड करने की अनुमति देता है। यह तब उपयोगी होता है जब आपके पास कोई प्रोजेक्ट होता है जो लाइब्रेरी या बाहरी घटक पर निर्भर करता है। यहां उपयोग करने के तरीके पर एक बुनियादी मार्गदर्शिका दी गई है Git Submodule
:
जोड़ना Submodule
Submodule
वर्तमान रिपॉजिटरी में जोड़ने के लिए, रिपॉजिटरी की रूट डायरेक्टरी पर जाएँ और निम्नलिखित कमांड चलाएँ:
git submodule add <URL_repository> <destination_path>
<URL_repository>
आप जिस रिपॉजिटरी को एम्बेड करना चाहते हैं उसका यूआरएल कहां है, और <destination_path>
इसे स्टोर करने के लिए वर्तमान रिपॉजिटरी में उपनिर्देशिका का पथ कहां है Submodule
।
क्लोन Submodule
एक बार जब आप रिपॉजिटरी में जोड़ लेते हैं Submodule
, तो आपको इसे मौजूदा रिपॉजिटरी में क्लोन करना होगा। क्लोन करने के लिए Submodule
, निम्नलिखित कमांड चलाएँ:
git submodule init
git submodule update
कमांड git submodule init
इनिशियलाइज़ करता है Submodule
और सबमॉड्यूल वाले रिपॉजिटरी के लिए एक लिंक बनाता है। कमांड git submodule update
स्रोत कोड को डाउनलोड करता है Submodule
और इसे संबंधित उपनिर्देशिका में अपडेट करता है
.
के साथ काम करना Submodule
एक बार Submodule
रिपॉजिटरी में क्लोन हो जाने पर, आप इसके साथ एक स्वतंत्र Git रिपॉजिटरी के रूप में काम कर सकते हैं। आप शाखाओं को चेकआउट कर सकते हैं, बना सकते हैं commits
और अंदर धकेल सकते हैं Submodule
।
मौजूदा रिपॉजिटरी में सबमॉड्यूल को अपडेट करने के लिए, कमांड चलाएँ:
git submodule update --remote
यह कमांड रिपॉजिटरी से नवीनतम परिवर्तनों को डाउनलोड करता है Submodule
और इसे संबंधित उपनिर्देशिका में अपडेट करता है।
निकालना Submodule
यदि आपको अब इसकी आवश्यकता नहीं है Submodule
, तो आप निम्न आदेश चलाकर इसे हटा सकते हैं:
git submodule deinit <submodule_name>
git rm <submodule_path>
<submodule_name>
के नाम से बदलें Submodule
और <submodule_path>
को युक्त उपनिर्देशिका के पथ से बदलें Submodule
। फिर, आपको इस बदलाव के लिए प्रतिबद्ध होने और इसे आगे बढ़ाने की जरूरत है।
Git Submodule
निर्भरताएँ प्रबंधित करने और उप-रिपॉजिटरी को आपके मुख्य प्रोजेक्ट में आसानी से एकीकृत करने में आपकी सहायता करें। यह आपको अलग स्रोत कोड बनाए रखने Submodule
और जरूरत पड़ने पर इसे आसानी से अपडेट करने की अनुमति देता है।