के साथ एक शाखा को अद्यतित रखना मेरे पास एक रिमोट रिपोजिटरी है जिसे मैंने खींच लिया है और मैं ब्रांचिंग कर रहा हूं। मैं मास्टर को किए गए परिवर्तनों के साथ नई शाखा को अद्यतित रखना चाहता हूं। मैं नीचे वर्कफ़्लो के बारे में सोच रहा हूं, क्या यह समझ में आता है या ऐसा करने के बेहतर तरीके हैं?मास्टर
प्रारंभिक शाखाओं और चेकआउट:, आवश्यकतानुसार
git checkout master git pull git checkout my_branch git merge master --no-ff
दोहराएँ चरण 2 के लिए समय-समय पर धक्का के साथ:
git checkout master
git pull
git checkout -b my_branch
my_branch
में कुछ काम करें, तो समय-समय पर रिमोट my_branch
।
फिर जब किसी मर्ज वापस के लिए तैयार:
git checkout master
git merge my_branch --no-ff
ध्वनि ठीक?
आपके (और क्रिस्टोफ के) उत्तर के लिए धन्यवाद। आपके प्रश्न का उत्तर देने के लिए, मेरे बॉक्स की मृत्यु होने पर बैकअप के रूप में कार्य करने के अलावा आवधिक के लिए कोई कारण नहीं है। और यदि कोई मेरे कोड को अपना काम करना चाहता है - पूरी तरह से संभावना नहीं है, जब तक कि मेरा कोड मास्टर में न हो जाए, साथ ही सार्वजनिक शाखा पर रिबेज करने से परेशानी हो सकती है, इसलिए मैं समझता हूं (लेकिन मुझे यकीन नहीं है कि वास्तव में क्यों ।) – larryq
rebases एक डबल धार तलवार हैं। एक ओर वे अक्सर अधिक स्पष्ट इतिहास का नेतृत्व करते हैं। दूसरी ओर वे मूल रूप से पुरानी सामग्री के साथ पूरी तरह से नए काम करते हैं। यदि आप अपनी प्रतिबद्धता को धक्का देते हैं, तो कोई और (सैद्धांतिक रूप से) उन लोगों पर अपने स्वयं के परिवर्तन कर सकता है। यदि आप बाद में आप को रीबेज करने का निर्णय लेते हैं, तो आप मूल रूप से पुराने कामों को अमान्य कर देते हैं और उन सभी परिवर्तनों को बनाते हैं। - यहां तक कि यदि आप अपनी पुरानी शाखा को हटाते हैं, तो दूसरा कोई भी अपने परिवर्तनों को धक्का दे सकता है और इसलिए आपके पुराने परिवर्तन भी धक्का दे सकता है, जिसके परिणामस्वरूप डुप्लिकेट काम करता है और एक रिज्यूटिंग गड़बड़ी होगी। :) – michas
फिर से, बहुत बहुत धन्यवाद। मैं 'गिट पुल - रीबेस' के बारे में पढ़ रहा हूं और 100% नहीं हूं, अगर मैं इसे वर्तमान में कहता हूं (कहें) 'my_branch'। उस परिस्थिति में, आदेश 'my_branch' रिमोट से खींचता है, और उसके बाद ... कौन सा शाखा ... मास्टर नहीं मैं मानता हूं, क्योंकि मैंने आदेश में कहीं भी इसका उल्लेख नहीं किया था। तो यह 'my_branch' के खिलाफ पुन: प्रयास करना चाहिए, जो मुझे थोड़ा अजीब लगता है क्योंकि मैंने हमेशा दो अलग-अलग शाखाओं को दोबारा दबा दिया है। लेकिन मुझे लगता है कि यह संभव है, और अब मैं इसके बारे में सोचता हूं, क्यों नहीं? – larryq