2012-07-26 18 views
7

मैं एक मर्कुरियल उपयोगकर्ता हूं, और मैं दूरस्थ शाखाओं के व्यवहार के बारे में उलझन में हूं। मेरे पास एक दूरस्थ शाखा origin/dev है, और मैं इसे स्थानीय ब्रंच dev पर दोहराना चाहता हूं।गिट- रिमोट शाखाओं को ट्रैक करना

  • जब भी मैं git pull, origin/dev में परिवर्तन जब भी मैं git push, dev में परिवर्तन origin/dev

में विलय कर रहे हैं dev

  • में विलय कर रहे हैं तो मैं एक ट्रैकिंग शाखा बनाया: क्या मैं चाहूँगा कि है

    git branch --track dev origin/dev 
    

    जो सबसे अच्छा मीटर है वाई ज्ञान, मुझे वही करना चाहिए जो मुझे चाहिए।

    फिर भी, मैं एक फीचर शाखा पर काम कर रहा था और git pull जारी किया था। जब मैं बाद में git checkout dev जारी 2 प्रतिबद्ध द्वारा puzzling संदेश

    आपका शाखा 'मूल/master_dev' के पीछे है प्राप्त किया, और तेजी से अग्रेषित हो सकता है।

    तो ऐसा लगता है कि मेरी स्थानीय शाखा सभी के बाद अपडेट नहीं की गई थी। जब भी मैं खींचता हूं तो शाखा को रिमोट पर अपडेट करने का कोई तरीका है और मैं वर्तमान में उस शाखा में नहीं हूं? यदि नहीं, तो क्या मैं सही हूं कि git merge (बिना किसी तर्क के) शाखा देव पर स्थिति बहाल करने के लिए पर्याप्त है?

  • +0

    संबंधित: [आप एक मौजूदा गिट शाखा को रिमोट शाखा कैसे ट्रैक करते हैं?] (Http://stackoverflow.com/q/520650/456814)। –

    उत्तर

    5

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

    जब आप git pull पर एक भिन्न शाखा पर थे, तो यह dev के लिए दूरस्थ ट्रैकिंग शाखा को अपडेट किया गया। अब git merge आपकी स्थानीय शाखा dev अपडेट करने के लिए पर्याप्त होगा।

    +3

    एक साइड नोट के रूप में, [लाएं और मर्ज करें, खींचें] [http://longair.net/blog/2009/04/16/git-fetch-and-merge/)। – Shahbaz

    +0

    असल में मैंने बस विलय करने की कोशिश की और परिणाम 'घातक है: कोई प्रतिबद्ध निर्दिष्ट नहीं है और merge.defaultToUpstream सेट नहीं है।' भले ही शाखा को – Andrea

    +1

    ठीक ट्रैकिंग के रूप में बनाया गया हो। इसे काम करने के लिए, आप यह 'गिट मर्ज रिमोट_नाम/शाखा_नाम' कर सकते हैं। आपके मामले में, 'गिट मर्ज मूल/master_dev'। –

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