यदि संभव हो, यह सुनिश्चित करें कि .gitmodules
फ़ाइल भंडार है कि किसी के द्वारा क्लोन किया जा सकता है, आम तौर पर या तो एक git://
या http://
URL के लिए एक URL होता है बनाने के लिए सबसे अच्छा है। तो उपयोगकर्ता उस SSH उपयोग कर सकते है खुद को submodule में क्लोनिंग के बाद remote.origin.url
में अपने उपयोगकर्ता नाम के साथ एक SSH यूआरएल को इंगित करने के बदल सकते हैं और बदल सकते हैं यूआरएल, जैसे:
cd my-submodule
git remote set-url origin [email protected]:/pathtorepos
अन्य उपयोगकर्ता क्या करना है कि में सक्षम होना चाहिए वर्तमान स्थिति। अपडेट: क्रिस जॉन्सन नीचे बताते हैं कि .gitmodules
में एसएसएच यूआरएल का उपयोग करना उचित है यदि आप उपयोगकर्ता नाम छोड़ देते हैं और रिपोजिटरी के सभी उपयोगकर्ताओं के पास एसएसएच एक्सेस होगा - उन्हें उपरोक्त में अपना उपयोगकर्ता नाम जोड़ना होगा यह स्थानीय और दूरस्थ रूप से अलग है।
ध्यान दें कि .gitmodules
में यूआरएल केवल तभी उपयोग किए जाते हैं जब सबमिशन प्रारंभ करना। सबमिशन शुरू करने से मुख्य परियोजना में कॉन्फ़िगरेशन मान submodule.<SUBMODULE-NAME>.url
सेट करता है जो .gitmodules
में जो कुछ भी किया गया है - यह वह मान है जिसका उपयोग पहले सबमिशन अपडेट पर किया जाएगा।
git config submodule.my-submodule.url [email protected]:/pathtorepos
दरअसल, आप अगर पहले अद्यतन विफल रहता है यह करने के लिए आवश्यकता हो सकती है: आरंभ और submodule को अद्यतन करने के बीच, आप भी इस URL कि जैसी कमांड के साथ कि पहले अद्यतन के लिए उपयोग किया जाएगा बदल सकते हैं। एक बार जब सबमिशन को पहली बार अद्यतन किया गया है, तो आपको जिस यूआरएल को बदलने की जरूरत है वह सबमिशन के भीतर origin
के लिए परिभाषित किया गया है - उस बिंदु पर यदि आप हटाना चाहते हैं तो मुख्य परियोजना में submodule.my-submodule.url
कॉन्फ़िगरेशन मान सेट करना केवल उपयोगी है और सबमिशन फिर से अद्यतन।
स्रोत
2011-05-17 13:36:20
एसएसएच-आधारित यूआरएल का उपयोग '.gitmodules' ** में करना उचित है यदि ** ** उनमें उपयोगकर्ता नाम शामिल नहीं है (प्रत्येक अंतिम उपयोगकर्ता अपने स्वयं के सर्वर उपयोगकर्ता नाम प्रदान करने के लिए '.ssh/config' को कॉन्फ़िगर कर सकता है, यदि यह उनके स्थानीय उपयोगकर्ता नाम से अलग है)। दूसरा, 'गिट सबमिशन इनिट' '.gitmodules' से' .git/config' तक सबमिशन प्रविष्टियों की प्रतिलिपि बनाता है, इसलिए एक बिंदु ('init' के बाद, लेकिन 'गिट सबमिशन अपडेट' के पहले उपयोग से पहले), जहां आप क्लोन किए जाने से पहले एक सबमिशन के यूआरएल को फिर से कॉन्फ़िगर कर सकते हैं। यदि submodules पहले से ही आपके '(सीडी उप और& git config remote.origin.url ...) को क्लोन कर दिया गया है, तो भी (भी) आवश्यक है। –
@ क्रिस जॉनसन: मैंने आपके पहले बिंदु के बारे में एक नोट जोड़ा है - धन्यवाद। मुझे बाद के बिंदु के बारे में काफी जानकारी है, लेकिन मैं सबमिड्यूल पर उत्तर रखने के लिए प्रयास करने की कोशिश कर रहा हूं, इसलिए वे सभी [रैंपिंग ब्लॉग पोस्ट] में नहीं आते हैं (http://longair.net/blog/2010/06/02/गिट-सबोड्यूल्यूल-समझाया गया /) सभी अलग-अलग राज्यों के बारे में आपके सबमिड्यूल में हो सकता है ... वैसे भी, मैं इस स्थिति को उस स्थिति का वर्णन करने के लिए भी अपडेट करूंगा :( –
ठीक है, मुझे आशा है कि यह बेहतर होगा अब –