क्या किसी अन्य (मास्टर या अन्य) से जानकारी के साथ एक साइड शाखा अपडेट करने का कोई तरीका है, और फिर दो जारी हैं? एक रिबेस की तरह, लेकिन पुराने डेटा को वहाँ रखते हुए?गिट विलय और अलग रखें?
मूल:
A---B---C---G---H master
\
D---E---F branchA
परिणाम: सी, जी, और एच, (कमिट जम्मू मर्ज है) ऐसी है कि कश्मीर के लिए प्रतिबद्ध अब भी है करता है से
A---B---C---G---H---L master
\ \
D---E---F---J---K branchA
इस तरह की है कि branchA
जानकारी हो जाता है एक साइड शाखा (और भावी प्रतिबद्धता एल अभी भी मास्टर पर है), लेकिन मास्टर से अद्यतन जानकारी है?
मैं नहीं है एक रिबेस करना है, क्योंकि उस के साथ खत्म हो जाएगा चाहते हैं:
A---B---C---G---H---L master
\
D'---E'---F'---K branchA
डी, ई, और एफ के "नए संस्करण" बनाना रूप में यदि वे बजाय एच के शीर्ष पर हुआ बी, और समस्या यह है कि सी और ई रेपो में एक प्रमुख फ़ोल्डर का नाम बदल रहा है, और मैं से अन्य फीचर अपडेट विलय किए बिना, उन्हें पर एक साथ पतन करना चाहता हूं। रीबेजिंग का मतलब है एच नए फ़ोल्डर नाम का उपयोग करता है, डी 'पुराने फ़ोल्डर का नाम बनाता है, और ई' इसे फिर से हटा देता है, जो सबसे साफ नहीं है।
बिंदु यह है कि मैं अतीत में उस फ़ोल्डर का नाम बदलना चाहता हूं (सी और ई) और इसे आगे लाने से रोकना चाहता हूं। क्या यह समझ में आता है? क्या मैं इस पिछड़े को देख रहा हूँ? या जब तक शाखा विलय नहीं हो जाती है, तो क्या मुझे सिर्फ गंदे rebase "नाम, नाम बदलें" चाल से निपटना चाहिए?
गिट विलय सबसे सरल जवाब है; मैं इसे दो शाखाओं को एक साथ विलय कर रहा था, और दोनों अलग-अलग जारी रखने में असमर्थ था ... लेकिन अब यह नहीं हो रहा है! – MidnightLightning
मैंने यह भी सोचा कि 'गिट मर्ज' ने एक ही शाखा में परिवर्तन * विलय करने के बजाय, दो शाखाओं को एक साथ विलय कर दिया था। लेकिन फिर मैंने पाया कि मैंने अनजाने में एक विषय शाखा बनाई है - * बी * - जबकि मेरे पास एक और विषय शाखा थी - * ए * - चेक-आउट, और फिर मैंने * बी * * मास्टर * में विलय किया, यह महसूस नहीं किया कि मैं भी था * ए * में सभी कामों को विलय करना! –