2012-01-04 6 views
6

मैं यह कर:गिट-एसवीएन कमांड की इस श्रृंखला का परिणाम अलग-अलग सिर में क्यों होता है?

$ git svn clone http://monsterdebugger.googlecode.com/svn/ -s --prefix=svn/ monsterdebugger 
$ cd monsterdebugger 
$ git branch -a 
* master 
    remotes/svn/trunk 
$ git co remotes/svn/trunk 
Note: checking out 'remotes/svn/trunk'. 

You are in 'detached HEAD' state. <And so on...> 

मुझे लगता है कि मैं पूरी तरह से समझ नहीं कर रहा हूँ क्या हुड के नीचे यहाँ चल रहा है। Svn repo के खिलाफ एक ट्रैकिंग शाखा/रिमोट/svn/trunk नहीं होना चाहिए? मैं एक अलग सिर के साथ क्यों समाप्त हुआ?

+0

आपकी ट्रैकिंग शाखा 'मास्टर' नहीं है? आप रिमोट शाखा क्यों देखना चाहते हैं? वैसे भी, मुझे लगता है कि आपका प्रश्न इस का एक डुप्लिकेट है: http://stackoverflow.com/questions/3965676/why-did-git-detach-my-head। संक्षेप में, जब भी आप ऐसी शाखा की जांच करते हैं जो "तुम्हारा" नहीं है (रिमोट शाखा की तरह), तो आप एक अलग सिर प्राप्त करते हैं। –

+0

* क्या * मेरी ट्रैकिंग शाखा मास्टर है? यह एक आकर्षक सवाल है! यह एक डुप्लिकेट प्रश्न नहीं है क्योंकि यह विशेष रूप से गिट-एसवीएन के बारे में है, हालांकि संभवतः इससे कोई फर्क नहीं पड़ता क्योंकि मुझे चिंता है। –

+0

हाँ, शायद यह है। 'मास्टर' देखें और 'git svn dcommit --dry-run' करें और देखें कि यह आपको क्या बताता है। –

उत्तर

8

ऐसा इसलिए है क्योंकि यह एक दूरस्थ शाखा है। इसके लिए आपको स्थानीय शाखा बनाने की आवश्यकता है, जैसे:

git checkout -b my-trunk remotes/svn/trunk 
+0

या '-B' भी, अगर मेरा ट्रंक पहले से मौजूद है? –

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

  • कोई संबंधित समस्या नहीं^_^