2011-03-12 7 views
7

मेरे पास एक गिट भंडार में प्रबंधित सरल परियोजना है। तिथि करने के लिए मैं जानबूझकर किसी भी शाखाओं नहीं बनाया है, लेकिन जब मैं अपनी पहली आज का उपयोग कर बनाने की कोशिश कीशाखा निर्माण पर त्रुटि: "चेतावनी: refname 'मास्टर' संदिग्ध है।"

$ git branch mybranch 

मैं यह त्रुटि दिखाई:

warning: refname 'master' is ambiguous. 
fatal: Ambiguous object name: 'master'. 

गहरी खुदाई:

$ git branch -a   
* master 
remotes/master/HEAD -> master/master 
remotes/master/master 

क्या गिट में देखना सामान्य है? क्या मैंने अपना भंडार गलत तरीके से क्लोन किया है? इस समस्या को हल करने का सबसे अच्छा तरीका क्या है?

+0

ऐसा लगता है कि क्लोनिंग करते समय आपने कुछ अजीब किया था। सही ढंग से क्लोन करने के लिए, 'गिट क्लोन [यूआरएल] [गंतव्य पथ]' का उपयोग करें। अधिक नैदानिक ​​मदद के लिए, जब आप 'चलाने Git config आप क्या मिलेगा पोस्ट -l' –

+0

धन्यवाद निशान, मैं मिलता है: core.repositoryformatversion = 0 core.filemode = सच core.bare = false core.logallrefupdates = true core.ignorecase = true remote.master.fetch = + refs/head/*: refs/remotes/master/* [email protected]: ###/###। गिट branch.master.remote = मास्टर शाखा.मास्टर.मेरगे = रेफ/हेड/मास्टर –

उत्तर

11

ऐसा लगता है कि यह अस्पष्ट है क्योंकि आपका रिमोट नाम और शाखा का नाम master दोनों है। आप

git remote rename master origin 
6

नियमों चल कैसे संशोधन विनिर्देशों व्याख्या कर रहे हैं gitrevisions(7) में दिया जाता है के लिए द्वारा और अधिक परंपरागत origin करने के लिए दूरस्थ नाम बदलने का प्रयास कर सकते हैं (git(1) से संदर्भित, प्रलेखन के अन्य बिट्स के अलावा)।

संक्षेप में, master दो पैटर्न जब अपने भंडार में refs के लिए लागू मेल खाता है: एक स्थानीय शाखा (refs/heads/<name>) और डिफ़ॉल्ट रिमोट ट्रैकिंग एक दूरस्थ (refs/remotes/<name>/HEAD) की शाखा।

रिमोट-ट्रैकिंग शाखा के लिए स्थानीय शाखा और master/HEAD (या master/master) के लिए heads/master का उपयोग करके इन्हें असंबद्ध किया जा सकता है।

Andrew Marshall उल्लेख के रूप में, हो सकता है कि आप अपने रिमोट का नाम बदलना चाहें ताकि पहले स्थान पर असंतोष न हो।

+0

+1 जहां यह समझाया गया है, दस्तावेज़ीकरण को संदर्भित करने के लिए +1। मेरी इच्छा है कि गिट ने 'रेफर्स/रिमोट्स//हेड' की कोशिश नहीं की - यह केवल उन लोगों के लिए भ्रम पैदा करता है जो पूरी तरह से सुनिश्चित नहीं हैं कि रिमोट और शाखाएं क्या हैं, जो अंतर को समझने वाले किसी भी व्यक्ति के लिए बहुत कम लाभ के साथ ... –

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