हमारे संगठन में, हम Git का उपयोग करके वितरित संस्करण नियंत्रण नीति का पालन करते हैं। हमारे पास एक मास्टर शाखा और कुछ फीचर शाखाएं हैं। जब कोई सुविधा जारी की जाती है तो उस शाखा को मास्टर में मिला दिया जाता है। यह कैसे सुनिश्चित करें कि अन्य फीचर शाखाओं में निर्माण के बाद मास्टर शाखा से परिवर्तन शामिल हैं?

क्या इसके लिए गिट की कोई उपयोगिता है?

1
tRuEsatm 10 अक्टूबर 2017, 23:41

1 उत्तर

सबसे बढ़िया उत्तर

यदि यह आपकी फीचर शाखा है, जिसका अर्थ है कि आप केवल एक ही इस पर काम कर रहे हैं, तो आपको रीबेस (git rebase) इसे पहले अपडेटेड मास्टर के ऊपर रखें (मतलब स्थानीय रिबेस: आप स्थानीय स्तर पर विरोधों का समाधान करते हैं)।

git checkout master
git pull # assuming you haven't worked on master
git checkout myFeatureBranch
git rebase master
git push --force # assuming you were the only one working on it

फिर आप इसे मास्टर में मर्ज करते हैं (यदि आप एक नई सुविधा जोड़ते हैं, तो मर्ज आमतौर पर नॉन-फास्ट-फॉरवर्ड होता है)

git checkout master
git merge --no-ff
git push
git checkout myFeatureBranch
1
VonC 10 अक्टूबर 2017, 23:50
धन्यवाद, @ वॉनसी! क्या मुझे हर बार मैन्युअल रूप से इन चरणों का पालन करना होगा? क्या कोई उपयोगिता है जो इसे जांच सकती है?
 – 
tRuEsatm
11 अक्टूबर 2017, 00:13
आप इसे स्क्रिप्ट कर सकते हैं, लेकिन रिबेस के दौरान हल करने के लिए कोई विरोध होने पर आपके पास मैन्युअल चरण होगा।
 – 
VonC
11 अक्टूबर 2017, 00:21