2011-04-08 20 views
6

भंडार एक और भंडार बी (changeset ए 2 का क्लोन बंद बनाई गई) को देखते हुए:Mercurial - मतभेद विलय भंडार ए-> बी बनाम बी-> ए?

A1 - A2 - A3 - A4 - A5 
     \ 
      B3 - B4 

हम इन दो खजाने एक साथ मर्ज करना चाहता था कहो। क्या रेपो बी में रेपो बी विलय करने के लिए रेपो बी में विलय किया गया है तो रेपो बी में विलय किया गया है?

एकमात्र अंतर जो मैं सोच सकता हूं वह विलय उपकरण स्थानीय/आधार arguments को आपके द्वारा चुने गए विकल्प के आधार पर उलट दिया जाएगा। क्या इसके बारे में जागरूक होने के लिए कोई और अंतर है?

+2

शब्दावली टिप्पणी * (जिसमें एकाधिक सिर हो सकते हैं)। –

+0

समझा - thx। –

+0

मैंने सामान्य Mercurial शब्दावली का उपयोग करने के लिए सवाल अद्यतन किया। –

उत्तर

8

आम तौर पर आपस में विलय, सममित हैं कुछ अपवादों के साथ:

  • मर्ज किए गए सिर अलग नामित शाखाओं से कर रहे हैं, क्रम महत्वपूर्ण है। मर्ज संशोधन पहली माता-पिता की शाखा पर होगा।
  • Mercurial 1.8.4 से शुरू होने पर यह बुकमार्क पर लागू होता है, यानी पहले माता-पिता के बुकमार्क
    केवल विलय संशोधन में आगे बढ़ेगा।
  • लॉग और diff विचारों में मर्ज संशोधन के माता-पिता का क्रम अलग है, लेकिन में कोई उल्लेखनीय व्यावहारिक प्रभाव नहीं है (मेरे अनुभव से)।
+0

शायद आप जानते हैं। मैंने हमेशा इस धारणा पर काम किया है कि मुझे शाखा में सबसे कम परिवर्तनों के साथ विलय करना चाहिए (यानी एच 1 में अपडेट करना, और एच 2 में विलय करना, जहां एच 2 में एच 1 की तुलना में सामान्य बिंदु के बाद कम बदलाव हैं), क्या वास्तव में यह आवश्यक है "सबसे अच्छी बात" करो? मर्ज एल्गोरिदम या व्हाट्नॉट के लिए शायद कम काम? मुझे याद नहीं है कि मैंने यह धारणा क्यों बनाई लेकिन आपके जवाब के आधार पर निर्णय लिया, और जितना अधिक मैं इसके बारे में सोचता हूं, ऐसा लगता है कि मेरी धारणा गलत है। यह कई नामित शाखाओं के संबंध में नहीं है, हालांकि, उसी शाखा में केवल दो प्रमुख हैं, जैसे कि डिफ़ॉल्ट शाखा में। –

+0

दिलचस्प बिंदु। अगर मैं इसके बारे में सोचता हूं, तो मैं शाखा में विलय करने के लिए भी अधिक परिवर्तन करता हूं। लेकिन, तकनीकी रूप से मैं या तो एक अच्छे कारण के बारे में सोच नहीं सकता। हो सकता है कि यह धारणा एक गलत धारणा है कि अगर कोई पूरी तरह से मैन्युअल रूप से किया जाना है तो विलय कैसे करेगा। –

+0

मुझे लगता है कि मैं Mercurial मेलिंग सूची पर पूछूंगा, अगर मैं कुछ निश्चित तरीके से या किसी अन्य चीज़ को प्राप्त करता हूं तो मैं एक टिप्पणी के साथ वापस आऊंगा। –

4

मर्ज के लिए माता-पिता का आदेश अलग होगा, लेकिन यह केवल तभी प्रभावित होगा जब आप मर्ज चेंजेट को देख रहे हों। अन्यथा, यदि आप बी 4 में अपडेट करते हैं और ए 5 या इसके विपरीत विलय करते हैं तो वास्तव में कोई अंतर नहीं होता है।

0

मुझे कोई तेज विशेषज्ञ हूँ, लेकिन इस सवाल का & संकल्प को पढ़ने के बाद मैं लग रहा है कि मर्ज दिशा में एक बहुत बड़ा फर्क कर सकते हैं मिल: * सिर * और नहीं * खजाने आप मर्ज: Backing Out a backwards merge on Mercurial

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