git - विशिष्ट शाखा से खींचना


198

मैंने अपने देव सर्वर पर एक गिट रिपॉजिटरी क्लोन किया है और फिर देव शाखा पर स्विच कर दिया है लेकिन अब मैं शाखा को अपडेट करने के लिए गिट पुल नहीं कर सकता।

मैं सर्वर पर कोड को कैसे अपडेट करूं?

जवाबों:


260

देखिए गिट-पुल मैन पेज :

git pull [options] [<repository> [<refspec>...]]

और उदाहरण अनुभाग में:

वर्तमान शाखा में दूरस्थ शाखा के आगे विलय करें:

$ git pull origin next

इसलिए मुझे लगता है कि आप कुछ करना चाहते हैं:

git pull origin dev

इसे स्थापित करने के लिए ताकि आप इसे देव शाखा पर होने पर डिफ़ॉल्ट रूप से कर सकें:

git branch --set-upstream-to dev origin/dev

6
" --set-upstreamध्वज को हटा दिया गया है और हटा दिया जाएगा। मूल से दूरस्थ शाखा देव को ट्रैक करने के लिए उपयोग करने --trackया --set-upstream-to Branch devस्थापित करने पर विचार करें ।" उदाहरण के लिए। git branch --set-upstream-to origin/dev
नागेंद्र राव

इसे संपादित करें - शुरुआत-अपस्ट्रीम के अपवर्तन को प्रतिबिंबित करने के लिए?
स्कॉट स्काइल्स

व्यक्तिगत रूप से मुझे प्रवाह में दिलचस्पी है जब मैं एक विशिष्ट शाखा को मूल से खींचना चाहता हूं जिसे अभी तक नहीं लाया गया है और उन ऑब्जेक्ट को अलग शाखा पर रखा गया है, इसलिए मेरी वर्तमान शाखा का विलय नहीं हो रहा है जो मैं खींच रहा हूं।
यूरी पोज़निअक

42

यहाँ है आपको क्या करने की जरूरत है। पहले सुनिश्चित करें कि आप उस शाखा में हैं जिसे आप खींचना नहीं चाहते हैं। उदाहरण के लिए यदि आपके पास मास्टर और शाखा विकसित है, और आप विकसित शाखा को खींचने की कोशिश कर रहे हैं तो मास्टर शाखा में रहें।

git checkout master

फिर,

git pull origin develop

6
यह भ्रामक है। यदि मैं एक दूरस्थ "देव" शाखा को स्थानीय "देव" शाखा में खींचना चाहता हूं, तो मुझे लगता है कि आपको स्थानीय "देव" शाखा में रहने की आवश्यकता है, न कि किसी अन्य शाखा की।
रोमन

2
क्या यह दूरस्थ विकास शाखा नहीं लाती है, और फिर इसे अपने स्थानीय मास्टर के साथ मिला देती है?
ब्रैड पी।

2
मैंने किया git checkout developऔर git pull origin developअच्छा काम किया। यदि आप किसी स्थानीय या दूरस्थ शाखा ( git branch -d developया git push origin --delete develop) को हटाना चाहते हैं, तो आपको अन्य शाखा की जांच करनी होगी
चेसुआरआर

1
बहुत ज्यादा उलझन। मैंने सिर्फ उस शाखा का विलय किया जिसे मैं स्थानीय रूप से मास्टर में परीक्षण करना चाहता था :)
फेबियन बोस्लर

जैसा कि @roman कहते हैं, एक को स्थानीय शाखा में होना चाहिए।
woter324

15

यह दो क्रियाओं को अलग करने के लिए अक्सर स्पष्ट git pullहोता है। पहली बात यह है कि स्थानीय ट्रैकिंग ब्रान्च को अपडेट करें जो दूरस्थ शाखा से मेल खाती है। इसके साथ किया जा सकता है git fetch। दूसरा यह है कि यह फिर परिवर्तनों में विलीन हो जाता है, जो कि निश्चित रूप से किया जा सकता है git merge, हालांकि अन्य विकल्प जैसे कि git rebaseकभी-कभी उपयोगी होते हैं।


7

लारवेल प्रलेखन उदाहरण:

git pull https://github.com/laravel/docs.git 5.8

कमांड प्रारूप पर आधारित:

git pull origin <branch>

👍


5

यहाँ एक विशिष्ट या किसी भी शाखा को खींचने के चरण हैं,

1. मास्टर पर जाएं (आपको उपयोगकर्ता नाम और पासवर्ड प्रदान करने की आवश्यकता है)

       git clone <url>

2. उपरोक्त कमांड रिपॉजिटरी को क्लोन करेगा और अब आप मास्टर ब्रांच होंगे

       git checkout <branch which is present in the remote repository(origin)>

3. उपरोक्त कमांड उस शाखा को चेकआउट करेगा जिसे आप खींचना चाहते हैं और उस शाखा को स्वचालित रूप से ट्रैक करने के लिए सेट किया जाएगा

4. यदि किसी कारण से यह काम नहीं करता है, तो अपने स्थानीय सिस्टम में उस शाखा की जांच करने के बाद, बस नीचे दिए गए कमांड को चलाएं

       git pull origin <branch>

1

आप git ब्रांच पर अपडेट / पुल कर सकते हैं जिसे आप कमांड के नीचे इस्तेमाल कर सकते हैं

git pull origin <branch-name>

उपरोक्त कमांड शाखा नाम देने से अपडेट / पुल करेगी

यदि आप किसी अन्य शाखा से खींचना चाहते हैं, तो आपको उस शाखा में जाने की आवश्यकता है।

git checkout master

से

git pull origin development

आशा है कि आपके लिए काम करेगा


0

git-pull - से लाएं और किसी अन्य रिपॉजिटरी या एक स्थानीय शाखा के साथ एकीकृत करें

git pull [options] [<repository> [<refspec>...]]

आप आधिकारिक git doc https://git-scm.com/docs/git-pull का उल्लेख कर सकते हैं

Ex:

git pull origin dev


आपका जवाब पहले से पोस्ट किए गए किसी भी अन्य से कैसे अलग है?
j08691

हाँ, केवल कुछ भी आधिकारिक चीज़ नहीं है ( git-scm.com/docs/git-pull ) ताकि आप विकल्पों का पता लगा सकें।
षष्ठी

0

यदि आप एक विशिष्ट शाखा से खींचना चाहते हैं तो आपको बस इतना करना होगा

git pull 'remote_name' 'branch_name'

नोट: सुनिश्चित करें कि आप पहले अपना कोड बनाते हैं।

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