git - with - रिमोट शाखा "गिट शाखा-आर" में दिखाई नहीं दे रही है




integrate git bash with visual studio code (4)

मैं रिमोट बिटबकेट रिपो को दबा रहा हूं और हाल ही में एक सहयोगी ने उसी रिपो में बनाई गई एक नई शाखा को धक्का दिया है।

मैं उनके द्वारा अपलोड किए गए परिवर्तन लाने की कोशिश कर रहा हूं।

 $ git branch -a  
 * master 
 localbranch1
 localbranch2
 remotes/origin/master

$ गिट शाखा -आर
मूल / मास्टर

बिटुबकेट के लिए वेब ui में मैं अपनी शाखा बना सकता हूं। किसी भी मदद / सलाह / दिशा की सराहना की जाएगी। धन्यवाद।

आपको आवश्यक किसी भी भविष्य की जानकारी से पूछें।

संपादित करें 1

$ git fetch bitbucket
Password for 'https://[email protected]':
From https://bitbucket.org/user/repo
 * branch            HEAD       -> FETCH_HEAD

यदि उसने बनाई गई शाखा को new_branch_b कहा जाता है तो मुझे यह देखने की उम्मीद करनी चाहिए:

$ git branch -r    
origin/master 
origin/new_branch_b

संपादित करें 2

$ git remote update
Fetching bitbucket
Password for 'https://[email protected]':
From https://bitbucket.org/user/repo
 * branch            HEAD       -> FETCH_HEAD


$ git branch -r
  origin/master

संपादित करें 3

[remote "bitbucket"]
url = https://[email protected]/user/repo.git

मैंने मूल के बजाय रिमोट बिटबकेट कहा (कम से कम यही मुझे याद है, मैंने इसे थोड़ी देर पहले सेट किया था)

संपादित करें 4

मैंने कान के जवाब के अनुसार बिटबकेट रिमोट कॉन्फ़िगरेशन अपडेट किया।

$ git config -e

[remote "bitbucket"]
    url = https://[email protected]/user/repo.git
    fetch = +refs/heads/*:refs/remotes/bitbucket/*

ज्यादातर लोगों के लिए इसे मूल कहा जाएगा

[remote "origin"]
    url = https://[email protected]/user/repo.git
    fetch = +refs/heads/*:refs/remotes/origin/*

बाद में

$ git remote update

Fetching bitbucket
Password for 'https://[email protected]':
remote: Counting objects: 48, done.
remote: Compressing objects: 100% (32/32), done.
remote: Total 35 (delta 21), reused 0 (delta 0)
Unpacking objects: 100% (35/35), done.
From https://bitbucket.org/user/repo
 * [new branch]      branch_name1 -> origin/branch_name1
 * [new branch]      branch_name2    -> origin/branch_name2

.... और इसी तरह।

मुझे लगता है कि git fetch origin भी git remote update लिए काम करेगा

इस समस्या के साथ मेरी मदद करने वाले हर किसी के लिए धन्यवाद।


अगर आपने अभी तक ऐसा नहीं किया है तो अपने रिमोट को अपडेट करें:

$ git remote update
$ git branch -r

दुर्भाग्यवश git branch -a और git branch -r यदि आप "गिट फ़ेच" निष्पादित नहीं करते हैं, तो आपको सभी रिमोट शाखाएं नहीं दिखाती हैं। git remote show origin लगातार हर समय काम करता है। git show-ref भी गिट रेपो में सभी संदर्भ दिखाता है। हालांकि यह git branch कमांड की तरह काम करता है


यदि आप --depth पैरामीटर के साथ क्लोन करते हैं, तो यह सभी शाखाओं को लाने के लिए --depth / config सेट करता है, लेकिन केवल मास्टर।

आप पैरामीटर को छोड़ सकते हैं या कॉन्फ़िगरेशन फ़ाइल को अपडेट कर सकते हैं

fetch = +refs/heads/master:refs/remotes/origin/master

सेवा मेरे

fetch = +refs/heads/*:refs/remotes/origin/*

remote सेक्शन भी नियम प्राप्त करता है। आप इसमें कुछ जोड़ सकते हैं:

fetch = +refs/heads/*:refs/remotes/origin/*

रिमोट से सभी शाखाएं लाने के लिए। (या bitbucket द्वारा origin को प्रतिस्थापित करें)।

कृपया इसके बारे में यहां पढ़ें: https://git-scm.com/book/en/v2/Git-Internals-The-Refspec





git