Git में दो स्थानीय शाखाएँ मिलती हैं


146

मेरे पास शाखा मास्टर, शाखा ए और शाखा बी है। अब मैं शाखा ए में काम कर रहा हूं और मुझे शाखा ए के साथ शाखा ए को विलय करने की आवश्यकता है और शाखा ए में मेरे काम को आगे बढ़ाएं। सभी फाइलें शाखा ए और बी में रखी गई हैं।

इसे लागू करने का तेज़ तरीका क्या है?

जवाबों:


247

अगर मैं अपने प्रश्न समझ में आया, आप मर्ज करना चाहते branchBमें branchA। ऐसा करने के लिए, पहले branchAनीचे की तरह चेकआउट करें,

git checkout branchA

तब मर्ज करने के लिए आदेश नीचे अमल branchBमें branchA:

git merge branchB

3
हमें यह सुनिश्चित करने की आवश्यकता है कि स्थानीय भंडार पर ए और बी शाखाएं मौजूद हैं। तभी हम मर्ज कर सकते हैं।
संतोष

8
प्रश्न स्पष्ट है:I have branch Master, branch A and branch B.
लीजी

166

यहाँ एक स्पष्ट तस्वीर है:

मान लें कि हमारे पास शाखा-ए और शाखा-बी है

हम शाखा-बी को शाखा-ए में विलय करना चाहते हैं

on branch-B -> A: switch to branch-A

on branch-A: git merge branch-B

32
यह बिल्कुल भी स्पष्ट नहीं है, बस टर्मिनल इनपुट को समझना बहुत आसान है
लोपू

9
यह पर्याप्त उत्तर स्पष्ट नहीं है .... इसका क्या अर्थ है "शाखा-बी को अपडेट करें" ... ऐसा करने के कई तरीके हैं, जो एक है? ... स्विच के बजाय git चेकआउट शाखा-ए अधिक समझ में आता है
Erdinç borbacı

2

अबरामन का जवाब बिल्कुल सही था। हालांकि, नए शौक के लिए, वे भंडार को खींचने के लिए भूल सकते हैं। जब भी आप ब्रांच से एक ब्रांच में मर्ज करना चाहते हैं। पहले चेकआउट करें और ब्रांच से खींच लें (सुनिश्चित करें कि, आपकी शाखा रिमोट ब्रांच से अपडेट है)

git checkout branchB
git pull

अब आप स्थानीय ब्रांच को रिमोट ब्रांच के साथ अपडेट कर रहे हैं। अब आप ब्रांच को चेकआउट कर सकते हैं

git checkout branchA

अब आप ब्रांच में हैं, तो आप निम्न कमांड का उपयोग करके ब्रांच के साथ विलय कर सकते हैं

git merge branchB

0

यदि आप या कोई अन्य देव शाखा पर आगे काम नहीं करेंगे, तो मुझे लगता है कि सिरदर्द के बिना श्रद्धा बनाने के लिए कमिट रखना बेहतर है। इसलिए ;

git checkout branchA
git pull --rebase branchB

यह महत्वपूर्ण है कि शाखा का उपयोग अब और नहीं किया जाना चाहिए।

अधिक जानकारी के लिए ; https://www.derekgourlay.com/blog/git-when-to-merge-vs-when-to-rebase/


1
इसके शीर्षक में, सवाल स्थानीय रिपॉजिटरी से संबंधित है - जिसके लिए pullकाम नहीं करेगा।
लीजी

2
आप सही हैं, मैंने सोचा कि इस ज्ञान को जोड़ना एक प्लस होगा क्योंकि शायद स्थानीय शाखा को अंत में धकेल दिया जाएगा। लेकिन मैंने आपके द्वारा बताए गए बिंदु को याद किया, मैं इसे टिप्पणी के रूप में जोड़ूंगा, उत्तर के रूप में नहीं। मुझे चेतावनी देने के लिए धन्यवाद।
एरडेन borbacı

0

branchB पर कर $git checkout branchAशाखा एक करने के लिए स्विच करने के लिए

शाखा पर करते हैं $git merge branchB

बस इतना ही चाहिए।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.