Git रेपो में मास्टर के खिलाफ एक पुरानी शाखा को अपडेट करें


123

मेरे पास एक Git रिपॉजिटरी है जिसमें शाखा (स्थानीय और दूरस्थ) है जो पुरानी हो गई है। मैं इस शाखा को मास्टर शाखा के साथ अद्यतित करना चाहता हूं, लेकिन मुझे नहीं पता कि यह कैसे करना है। संभवतः कई मर्ज संघर्ष भी होंगे।

मैं इस आउट-ऑफ-डेट शाखा को मास्टर शाखा के समान स्थिति में कैसे ला सकता हूं या अपडेट कर सकता हूं?


1
यदि आप यहां यह पता लगाने के लिए यहां आए हैं कि एक पुरानी शाखा में मास्टर के खिलाफ पुरानी शाखा को कैसे अपडेट किया जाए यदि आपने स्थानीय शाखा में कोई बदलाव किया है तो बस "गिट पुल" करें
जर्ब

जवाबों:


152

मास्टर शाखा को अपडेट करें, जिसे आपको परवाह किए बिना करने की आवश्यकता है।

फिर, इनमें से एक:

  1. मास्टर शाखा के खिलाफ पुरानी शाखा को रिबास करें। रीबेस के दौरान मर्ज संघर्ष को हल करें, और परिणाम एक अप-टू-डेट शाखा होगी जो मास्टर के खिलाफ सफाई से विलय करती है।

  2. अपनी शाखा को मास्टर में मर्ज करें, और मर्ज संघर्षों को हल करें।

  3. अपनी शाखा में मास्टर मर्ज करें, और मर्ज संघर्षों को हल करें। फिर, अपनी शाखा से मास्टर में विलय साफ होना चाहिए।

इनमें से कोई भी दूसरे से बेहतर नहीं है, उनके पास बस अलग-अलग ट्रेड-ऑफ पैटर्न हैं।

मैं अपने दृष्टिकोण में, बाद में पाठकों को समग्र परिणाम देने वाले रिबास दृष्टिकोण का उपयोग करूंगा, लेकिन यह व्यक्तिगत स्वाद से अलग नहीं है।

उस शाखा को फिर से बनाने और रखने के लिए जो आप करेंगे:

git checkout <branch> && git rebase <target>

अपने मामले में, पुरानी शाखा देखें

git rebase master 

मास्टर के खिलाफ इसे फिर से बनाने के लिए।


1
@Andrew: git rebase:)
चार्ल्स बी

1
git checkout $branch && git rebase $target- आपके मामले में, पुरानी शाखा की जाँच करें, फिर git rebase masterइसे मास्टर के खिलाफ फिर से बनाने के लिए।
डैनियल पिटमैन

3
क्या आपका रेपो सार्वजनिक है? यदि यह सार्वजनिक है, तो इसे रद्द करना ठीक है?
Event_jr

4
दूरस्थ शाखाओं में रिबास का उपयोग करते समय अच्छी सलाह: इस दूरस्थ शाखा को मास्टर शाखा के खिलाफ तभी करें जब कोई इस दूरस्थ शाखा पर कमिट नहीं कर रहा हो।
ढेरिक

एक बार रिबास हो जाने के बाद, आपको -fविकल्प का उपयोग करके परिवर्तनों को धकेलना होगा । जैसा कि आप इतिहास को फिर से लिख रहे हैं, बलपूर्वक धक्का की आवश्यकता है।
ओपस्टर एलस्टिक्स खोज निंजा
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.