आप git merge masterया तो कर सकते हैं git rebase master, इस मामले में मैं git rebase पसंद करेंगे ।
क्योंकि git rebaseयह ऐसा बनाता है जैसे कि मास्टर शाखा में परिवर्तन के ऊपर फीचर शाखा में बदलाव किए गए थे, जो संस्करण ग्राफ को सरल बनाता है।
रिबेस
से उदाहरण लें Git रिबेस मैनुअल , git rebase masterशाखा में feature:
A---B---C feature A'--B'--C' feature
/ --rebase--> /
D---E---F---G master D---E---F---G master
हालांकि, git rebaseकेवल तभी उपयुक्त है जब शाखा वितरित नहीं की गई है, या भ्रम और अतिरिक्त काम नीचे की ओर होगा, क्योंकि पुराने ए, बी, सी अब नए कॉमिट ए ', बी', सी ', प्लस एफ द्वारा प्रतिस्थापित किए जाते हैं और जी जो पहले नहीं थे।
git rebase masterशाखा में वास्तविक परिणाम featureयह है:
( A---B---C )
/
/ A'--B'--C' feature
/ /
D---E---F---G master
रीटेस के बाद कमिट ए, बी, सी लटक रहे हैं, लेकिन फिर से उपलब्ध हैं git reflog feature।
मर्ज
यदि किसी ने आपकी शाखा को खींच लिया है, या आपने इसे कहीं धकेल दिया है, तो आपको इसके बजाय विलय करना चाहिए, ताकि दूसरे छोर पर भ्रम और अतिरिक्त काम न हो सके। अपस्ट्रीम रिबास से पुनर्प्राप्त देखें ।
यह git merge masterशाखा का परिणाम है feature:
A---B---C feature A---B---C---M feature
/ --merge--> / ,---’
D---E---F---G master D---E---F---G master
वैकल्पिक रूप से, यदि आप git merge featureशाखा में हैं master, तो यह इस तरह दिखेगा:
A---B---C feature A---B---C feature
/ --merge--> / \
D---E---F---G master D---E---F---G---M master