2013-03-15 9 views
7

गिट्स नो-फास्ट-फॉरवर्ड विलय के बराबर बराबर क्या है (यदि कोई तेज़ आगे संभव होगा)?क्या गिट्स नो-फास्ट-फॉरवर्ड विलय के बराबर बराबर है?

संपादित

मान लें कि आप अपने सिर/मास्टर/डिफ़ॉल्ट की नोक पर एक शाखा/बुकमार्क है:

o feature 
| 
o 
| 
o master/default 
| 
... 

एक साधारण तेजी से आगे मर्ज परिणाम होगा में:

o feature/master/default 
| 
o 
| 
o 
| 
... 

एक नो-फास्ट-फॉरवर्ड विलय इस तरह दिखेगा:

o merge commit - feature/master/default 
| \ 
| o  
| | 
| o 
|/
o 
| 
... 
+0

"अपडेट"? क्या यह नहीं है कि तेजी से आगे बढ़ना क्या है? यह सिर्फ एक अद्यतन करता है? बेशक, Mercurial यह पता नहीं लगाएगा, लेकिन मुझे नहीं लगता कि यह एक विलय करने की कोशिश करेगा। –

+0

वह एक फास्ट-फॉरवर्ड विकल्प नहीं मांग रहा था, न कि फास्ट फॉरवर्ड विकल्प। :) –

+0

यदि आप किसी का पता नहीं लगा सकते हैं, तो क्या आप जो चाहते हैं उसे विलय करने से पहले एक डमी मास्टर में प्रतिबद्ध होगा? –

उत्तर

7

यह इस बात पर निर्भर करता है कि आपने अपनी फीचर शाखा कैसे की है।

यदि सुविधा नामित शाखा पर विकसित की गई थी, तो आप किसी भी फास्ट-फॉरवर्ड विलय के बराबर प्राप्त कर सकते हैं। वास्तव में, नामित शाखाओं को किसी अन्य तरीके से विलय नहीं किया जा सकता है।

hg update default 
hg branch feature-1 
...work... 
hg commit -m "implemented feature on named branch" 
hg update default 
hg merge feature-1 
hg commit -m "merged feature-1 to default" 

यह इस तरह एक ग्राफ में परिणाम होगा:

o merged feature-1 to default 
|\ 
| o feature-1: implemented feature on named branch 
|/ 
o 
| 

नामित शाखाओं के साथ यह केवल काम करता है (अर्थात शाखाओं hg branch आदेश का उपयोग कर बनाई गई)। यह अज्ञात शाखाओं या बुकमार्क के लिए काम नहीं करता है।

आपको इस समस्या पर चर्चा करने वाले Mercurial मेल सूची पर this thread(मृत-लिंक) में रुचि हो सकती है।

+0

यह उन लोगों के लिए एक विचार होगा जो वास्तव में किसी सुविधा को विलय करने के लिए विलय परिवर्तन के 'विराम चिह्न' को पसंद करते हैं। आपके पास 'newfeature' नामक एक नाम की शाखा है और फिर उस शाखा के भीतर कई बुकमार्क हैं। – Omnifarious

+0

अब तक इस उत्तर का सबसे अच्छा हिस्सा अंतिम पंक्ति है। – Ringding

+0

आप 'डीबगसेटपेरेंट्स' कमांड का उपयोग करके अज्ञात सिर के साथ Mercurial में एक ओडीपस विलय कर सकते हैं। देखें: http://hgtip.com/tips/advanced/2010-04-23-debug-command-tricks/#3-simulate-gits-no-ff-merges-with-anonymous-heads। मुझे लगता है कि डीबग कमांड को शेष Mercurial की संगतता गारंटी नहीं दी जाती है, हालांकि। – jwd

संबंधित मुद्दे