आपको शायद अपने प्रोजेक्ट के कुछ दस्तावेज़ों में प्रत्येक उपट्री के "अपस्ट्रीम" के लिए उपसर्ग, यूआरएल और शाखा दस्तावेज करना चाहिए।
नीचे दिए गए उदाहरण बताते हैं कि यह जानकारी अक्सर आपके उप-विलय विलय प्रतिबद्ध संदेशों में दर्ज की जाएगी, लेकिन यह विलय और/या खींचने के सही तरीके से निर्भर करती है।
पर विचार प्रारंभिक सबट्री मर्ज इन आदेशों के साथ बनाने के लिए:
git merge --no-commit sub/master
git read-tree -u --prefix=sub sub/master
git commit
संदेश प्रतिबद्ध निम्नलिखित होगा:
Merge remote-tracking branch 'sub/master'
हम देख सकते हैं कि दूरदराज के sub
नामित किया गया था और शाखा का नाम master
था, लेकिन हमें यूआरएल नहीं दिखाई देता है। अंतिम चरण में मैन्युअल प्रतिबद्धता करते समय आप संदेश में यूआरएल जोड़ सकते हैं।
बाद में, आप नई 'नदी के ऊपर "परिवर्तनों को शामिल करने git pull
उपयोग कर सकते हैं:
git pull -Xsubtree=sub sub master
डिफ़ॉल्ट प्रतिबद्ध संदेश भंडार यूआरएल और शाखा के नाम शामिल होंगे:
Merge branch 'master' of server:path/to/repository
दूसरी ओर , आरंभिक विलय और बाद के विलयों में विविधताएं जो शाखा नाम का उपयोग करके प्रतिबद्ध वस्तुओं को सीधे संदर्भित करती हैं (उदाहरण के लिए 15dbbda
sub/master
के बजाय) शाखा नाम को रिकॉर्ड होने से रोक देगा; अगर कोई sub master
के बजाय . remotes/sub/master
से खींचने का निर्णय लेता है तो यूआरएल रिकॉर्ड नहीं करने के लिए भी यही होता है।
स्रोत
2011-05-30 05:30:57
मैं उन पुस्तकालयों को संशोधित करने जा रहा हूं जिन्हें मैं आयात कर रहा हूं, और मैं जरूरी नहीं कि उन संशोधनों को प्रकाशित करना चाहता हूं। क्या submodules बाहरी भंडार में स्थानीय संशोधन करने की अनुमति देते हैं? या वे सिर्फ बाहरी भंडार से जुड़े हैं? – wanderingbear