मुझे लगता है मैं git pull
को समझते हैं और यह कैसे मैं इसे से समझाने, मैं क्या कहते हैं, "सरल शब्दों" है:सरल शब्दों में "git pull --rebase" को कैसे समझाया जाए?
- सामान्य शब्दों में,
git pull
के बारे में एक "स्थानीय" में एक "दूरस्थ" शाखा विलय है डाली। - और अधिक विस्तार में, Git "अद्यतन"/करने के लिए "दूरस्थ" शाखा की सामग्री का उपयोग करता है "स्थानीय" शाखा की सामग्री "संशोधित"।
- भी अधिक विस्तार में, यदि एक फ़ाइल "स्थानीय" शाखा में लेकिन "दूरस्थ" शाखा में नहीं संशोधित किया गया है, तो मर्ज के बाद, फ़ाइल की सामग्री "स्थानीय में सामग्री के रूप में ही किया जाएगा " डाली। उल्टा भी सही है। अगर "रिमोट" शाखा पर एक फ़ाइल संशोधित की गई थी लेकिन "स्थानीय" शाखा में नहीं, तो सामग्री "रिमोट" शाखा से ली जाएगी।
- एक फ़ाइल दोनों शाखाओं में संशोधित किया गया था, तो ("स्थानीय" और "दूरस्थ") Git से दोनों शाखाओं से संशोधनों लेने के लिए की कोशिश करेंगे। यदि फ़ाइल के विभिन्न स्थानों पर परिवर्तन होते हैं, तो दोनों परिवर्तन लागू किए जाएंगे और विलय के बाद फ़ाइल की सामग्री में उपस्थित होंगे।
- परिवर्तन एक ही जगह है कि हम क्या एक "संघर्ष मर्ज" के रूप में जानते है पर हो और मैं सादगी के लिए इस मामले को छूने के लिए नहीं जा रहा हूँ है।
- मर्ज का एक परिणाम के रूप में, हम "स्थानीय" भंडार को संशोधित और इसलिए हम "प्रतिबद्ध" की जरूरत है।
अब मैं git pull --rebase
के लिए एक ही तरह का स्पष्टीकरण प्राप्त करना चाहता हूं। मैं इस तरह के शब्दों को "हेड", "इंडेक्स", "फ़ेच", "अपस्ट्रीम" के रूप में उपयोग नहीं करना चाहता क्योंकि ये शब्द/अवधारणा केवल मेरे जैसे शुरुआती लोगों को भ्रमित करती है। मुझे पता है कि मैं इन "उन्नत" अवधारणाओं सीखने की जरूरत है और मैं ट्यूटोरियल पढ़कर लेकिन अभी के लिए यह करना है, मेरे सीखने की प्रक्रिया का एक भाग के रूप में, मैं git pull --rebase
समझना चाहते हैं।
मुझे लगता है कि जोड़े गए कुछ बिंदु पर मैं निम्नलिखित विवरण सुना। git pull --rebase
द्वारा। जब हम विलय करते हैं, तो हम ऊपर वर्णित अनुसार "सममित" तरीके से नहीं करते हैं। इसके बजाय, हम पहले "स्थानीय" भंडार में परिवर्तनों को "भूल जाते हैं" और "दूरस्थ" भंडार से केवल परिवर्तन लागू करते हैं। ऐसा करके हम मूल रूप से रिमोट रिपोजिटरी को "कॉपी" करते हैं। उसके बाद हम शीर्ष पर "स्थानीय" भंडार से परिवर्तन लागू करते हैं। हालांकि, यह अभी भी मुझे स्पष्ट नहीं है कि इसका क्या अर्थ है। विशेष रूप से, "शीर्ष पर" क्या मतलब है।
ध्यान दें कि गिट पुल एक गिट विलय है जिसके बाद गिट विलय होता है। यह वास्तव में यह समझने में मदद कर सकता है कि सूचकांक के साथ हेड क्या है। यदि आप नहीं करते हैं, तो अगर आप कुछ जल्दी से योजनाबद्ध नहीं होते हैं तो आप एक सैंडबैंक हिट करेंगे। – rubenvb
जैसा कि मैंने प्रश्न में लिखा था, मुझे नहीं पता कि "fetch" का अर्थ क्या है। – Roman
@Roman, अब आप ... – alexis