मेरी तीन शाखाएँ हैं: मास्टर, शाखाए, और शाखाबी। शाखाबी शाखा ए से अलग है और अंततः शाखा ए में विलय कर दिया जाएगा।
K---L---M---N---O branchB
/
E---F---G---H---I---J branchA
/
A---B---C---D master
मुझे दोनों शाखाओं में मास्टर से परिवर्तन प्राप्त करने की आवश्यकता थी, इसलिए मैंने निम्नलिखित को चलाया
branch-a> git fetch origin master
branch-a> git rebase -i origin/master
branch-a> git push -f
यह मास्टर के खिलाफ शाखा ए को सही ढंग से पुनर्निर्मित करता है, लेकिन मुझे शाखा बी में परेशानी हो रही है। इसे ब्रांचए (जिसमें अब मास्टर से बदलाव हैं) पर रिबेस करने की कोशिश नहीं कर रहा है जैसा कि मैंने आशा की थी। 0 होने पर मुझे बड़ी मात्रा में विलय संघर्ष मिला, इसलिए मैंने रिबेस को निरस्त कर दिया। थोड़ा नुकसान होने पर।
जब मैं शाखाबी के लिए अपने पीआर को देखता हूं (जिसकी आधार शाखा ए है), अब यह शाखा ए और बी के लिए प्रतिबद्ध इतिहास दिखाता है जब यह केवल बी होना चाहिए।
1 उत्तर
क्या यही मुझे करना होगा:
git rebase --onto=branchA branchB~3 branchB
आप इस तरह से एक ही शॉट में पूरी चीज कर सकते थे:
git checkout branchB
git rebase master
git branch -f branchA branchb~3
संबंधित सवाल
नए सवाल
git
Git एक ओपन-सोर्स वितरित संस्करण नियंत्रण प्रणाली (DVCS) है। Git उपयोग और वर्कफ़्लो से संबंधित प्रश्नों के लिए इस टैग का उपयोग करें। जीआईटी-संबंधित मुद्दों के लिए [github] टैग का उपयोग केवल इसलिए न करें क्योंकि GitHub पर एक रिपॉजिटरी को होस्ट किया जाना है। इसके अलावा, सामान्य प्रोग्रामिंग प्रश्नों के लिए इस टैग का उपयोग न करें जो कि Git रिपॉजिटरी को शामिल करने के लिए होता है।