बस एक स्पष्टीकरण (ubuntu 12.04 पर git संस्करण 1.7.9.5 का उपयोग करके):
Git रिमूव जोड़ / हटा देगा। ये एक सर्वर से जुड़े git के दूरस्थ उदाहरण हैं।
git remote add myremote git://remoteurl
फिर आप कह सकते हैं कि git रिपॉजिटरी को ऐसा कहा जा सकता है:
git fetch myremote
ऐसा लगता है कि यह 'myremote' नाम की एक शाखा बनाता है, हालांकि शाखा के लिए रिमोट स्वचालित रूप से सेट नहीं होता है। ऐसा करने के लिए, आपको निम्न कार्य करने होंगे:
पहले, सत्यापित करें कि आपको यह समस्या है, अर्थात
git config -l | grep myremote
आपको कुछ इस तरह देखना चाहिए:
remote.myremote.url=git://remoteurl
remote.myremote.fetch=+refs/heads/*:refs/remotes/myremote/*
branch.myremote.remote=.
branch.myremote.merge=refs/heads/master
यदि आप देखते हैं branch.myremote.remote=.
, तो आपको आगे बढ़ना चाहिए:
git config branch.myremote.remote myremote
git checkout myremote
git pull
अब आपको दूरस्थ रिपॉजिटरी के साथ अद्यतित होना चाहिए, और आपके खींच / पुश को उपयुक्त रिमोट से बांधा जाना चाहिए। आप इस तरीके से, प्रति शाखा में रिमोट को स्विच कर सकते हैं । [नोट 1]
के अनुसार एक सरकारी Git कॉन्फ़िग प्रलेखन , आप एक सेट कर सकते हैं डिफ़ॉल्ट , धक्का शाखा (बस उस पृष्ठ पर remote.pushdefault खोज) लेकिन ध्यान रखें कि इस खजाने / शाखाओं जो पहले से ही मौजूद प्रभावित नहीं करेगा, तो यह काम करेगा, लेकिन केवल नई रिपोजिटरी / शाखाओं के लिए। आपको याद रखना चाहिए कि --global
उपयोगकर्ता-विशिष्ट रिपॉजिटरी डिफॉल्ट्स (~ / .gitconfig) सेट करेगा,--system
को सेट करेगा सिस्टम-वाइड रिपॉजिटरी डिफॉल्ट्स (/ etc / gitconfig) सेट करेगा, और कोई भी फ्लैग वर्तमान रिपॉजिटरी (./.itconfig) के लिए कॉन्फ़िगरेशन विकल्प सेट नहीं करेगा।
यह भी ध्यान दिया जाना चाहिए कि push.default config विकल्प रेफ-स्पेक व्यवहार को कॉन्फ़िगर करने के लिए है, रिमोट नहीं व्यवहार के लिए।
[१]: git branch --set-upstream myotherremote
आमतौर पर यहां काम होगा, हालांकि गिट की शिकायत होगी कि इसका उपयोग होने पर यह अपने स्वयं के रिमोट के रूप में एक शाखा स्थापित नहीं करेगा git branch --set-upstream myremote
। मेरा मानना है कि यह गलत व्यवहार है।