2013-03-30 8 views
14

पर सभी शाखाएं नहीं दिखा रहा है मैंने गितूब से एक रेपो फोर्क किया। git remote -v करने पर यह प्रदर्शित करता है:गिट स्थानीय

origin https://github.com/myusername/moodle.git (fetch) 
origin https://github.com/myusername/moodle.git (push) 
upstream https://github.com/moodle/moodle.git (fetch) 
upstream https://github.com/moodle/moodle.git (push) 

moodle.git के बारे में 10 शाखाएं हैं, लेकिन रेपो केवल 2 उनमें से पता चलता है। git branch -a कर रही पर (सभी शाखाओं को दिखाने) मैं:

MOODLE_24_STABLE// just these two on local..how? 
* master// 
    origin/MOODLE_13_STABLE 
    origin/MOODLE_14_STABLE 
    origin/MOODLE_15_STABLE 
    origin/MOODLE_16_STABLE 
    origin/MOODLE_17_STABLE 
    origin/MOODLE_18_STABLE 
    origin/MOODLE_19_STABLE 
    origin/MOODLE_20_STABLE 
    origin/MOODLE_21_STABLE 
    origin/MOODLE_22_STABLE 
    origin/MOODLE_23_STABLE 
    origin/MOODLE_24_STABLE 
    origin/master 
    upstream/MOODLE_13_STABLE 
    upstream/MOODLE_14_STABLE 
    upstream/MOODLE_15_STABLE 
    upstream/MOODLE_16_STABLE 
    upstream/MOODLE_17_STABLE 
    upstream/MOODLE_18_STABLE 
    upstream/MOODLE_19_STABLE 
    upstream/MOODLE_20_STABLE 
    upstream/MOODLE_21_STABLE 
    upstream/MOODLE_22_STABLE 
    upstream/MOODLE_23_STABLE 
    upstream/MOODLE_24_STABLE 
    upstream/master 

मैं डेटा या किसी भी अनियमितताओं के किसी भी हानि के बिना मेरी समस्या का समाधान करते हैं?

+3

आप और अधिक स्थानीय शाखाओं क्यों उम्मीद करेंगे? एक भंडार क्लोन करने के बाद, केवल एक स्थानीय मास्टर शाखा है। मांग पर अन्य शाखाएं बनाई गई हैं। – knittl

+0

@knittl: ठीक है। मुझे यह नहीं पता था। क्या आप कृपया मुझे निर्देश दें कि यह कैसे करें? मैंने एक शाखा बनाई है 'गिट चेकआउट -बी STABLE_23_STABLE' लेकिन फाइलें उस शाखा के नहीं हैं। – xan

+1

'गिट चेकआउट -बी MOODLE_23_STABLE' वर्तमान प्रतिबद्धता से एक नई शाखा बनाता है, इसलिए आप अभी भी वही काम करेंगे।या तो 'Git चेकआउट बी MOODLE_23_STABLE नदी के ऊपर/MOODLE_23_STABLE' या' Git चेकआउट MOODLE_23_STABLE' (संक्षेप/DWIM वाक्य रचना) के – knittl

उत्तर

16

रेपो क्लोनिंग स्थानीय रिपो पर सभी रिमोट शाखाओं को डुप्लिकेट नहीं करेगा: कई शाखाओं के साथ एक बड़े रिमोट रेपो के लिए, जो आपके स्थानीय नामस्थान को शाखाओं के साथ प्रदूषित करेगा।

मेरे पास एक दूरस्थ रेपो की सभी दूरस्थ शाखाओं को ट्रैक करने वाली स्थानीय शाखाएं बनाने के लिए one-liner command है, लेकिन आमतौर पर इसकी आवश्यकता नहीं होती है।
आवश्यकता होने पर आप केवल एक दूरस्थ शाखा को ट्रैक करने वाली स्थानीय शाखा बनाते हैं।

git checkout -b aBranch --track origin/aBranch 

# or, shorter: 
$ git checkout --track origin/aBranch 
Branch aBranch set up to track remote branch refs/remotes/origin/aBranch. 
Switched to a new branch "aBranch" 

# even shorter at the end of this answer. 

एक --track जोड़ना नई शाखा से "के रूप में upstream" शुरू बिंदु शाखा चिह्नित करने के लिए विन्यास की स्थापना के लिए अनुमति देता है।
यह कॉन्फ़िगरेशन git status और git branch -v में दोनों शाखाओं के बीच संबंध दिखाने के लिए गिट बताएगा।
इसके अलावा, यह नई शाखा की जांच होने पर अपस्ट्रीम से खींचने के लिए तर्क के बिना गिट खींचता है।


kostix कहा गया है कि --track निहित है जब एक दूरस्थ शाखा एक शाखा forking (जब तक branch.autosetupmergefalse पर सेट है)

यह पर्याप्त

git checkout aBranch 

git checkout man page से सटीक विवरण है हो सकता है :

तो <branch> नहीं मिला है लेकिन वहाँ में ठीक एक दूरदराज के एक मेल खाने वाले नाम (यह <remote> कहते हैं) के रूप में बराबर का इलाज, एक ट्रैकिंग शाखा मौजूद नहीं है:,

$ git checkout -b <branch> --track <remote>/<branch 
+0

'--track' जब एक दूरस्थ शाखा एक शाखा forking निहित है (जब तक कि' 'FALSE' branch.autosetupmerge' करने के लिए सेट नहीं है)। मैं भी @xan सलाह देंगे, अपने समय लेने के लिए और कुछ [दूरस्थ शाखाओं पर परिचयात्मक सामग्री] (http://git-scm.com/book/en/Git-Branching-Remote-Branches) बाद में खो नहीं करने के लिए पढ़ने के लिए। – kostix

+0

@ कोस्टिक्स अच्छा बिंदु। मैंने अधिक दृश्यता के उत्तर के लिए सटीकता को जोड़ा है। – VonC

+1

'Git चेकआउट --track मूल/abranch' यह मेरे लिए समस्या हल हो जाती है, धन्यवाद –

2

कभी-कभी यदि आप खींच लिया havn't नवीनतम कोड, आपको नव निर्मित शाखा की जांच करने की अनुमति नहीं दी जाएगी। क्योंकि आपके परिवर्तन सिंक में नहीं हैं।

तो सबसे पहले -pull नवीनतम -checkout नव निर्मित शाखा से

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