2013-01-16 37 views
34

ईजीट फिर से हमला करता है। मैंने ईजीट में एक अलग शाखा में स्विच करने की कोशिश करने की गलती की और यह किसी भी तरह से गड़बड़ हो गई और कोई शाखा नहीं देखी गई। मैं तो एक इस गैर शाखा करने के लिए प्रतिबद्ध है, और फिर जब मुझे एहसास हुआ कि मैं सही शाखा पर नज़र रखने नहीं कर रहा था बनाया है, मैं निम्नलिखित भाग गया:चेतावनी: आप 1 प्रतिबद्धता छोड़ रहे हैं, आपकी किसी भी शाखा से कनेक्ट नहीं हैं

$ git checkout issue2 
Warning: you are leaving 1 commit behind, not connected to any of your branches: 

    bada553d My commit message 

If you want to keep them by creating a new branch, this may be a good time to do so with: 

    git branch new_branch_name .... 

Branch issue2 set up to track remote branch issue2 from origin. 
Switched to a new branch issue2. 

अब जब कि मैं चीजों को असफल है, मैं कैसे संबद्ध है कि है मेरी वर्तमान शाखा के साथ प्रतिबद्ध? मुझे एक नई शाखा बनाने में कोई दिलचस्पी नहीं है, मैं बस अपनी प्रतिबद्धता को अपनी शाखा में खींचना चाहता हूं, issue2

+1

संभावित डुप्लिकेट [एक पृथक हेड स्टेट में बनाए गए गिट काम करने के लिए क्या होता है?] (Http://stackoverflow.com/questions/9984223/what-happens-to-git-commits-created-in-a-detached -हेड-स्टेट) –

उत्तर

58

यदि आप केवल एक प्रतिबद्धता है तो आप git cherry-pick bada553d कर सकते हैं।

तुम भी कहीं भी संदर्भित कर सकते हैं जिन्हें आपने reflog का उपयोग करके किया गया: चेकआउट और जहां अपने वर्तमान से एक शाखा अस्थायी बनाने के लिए

git checkout -b temp [email protected]{3} 

:

git reflog 

तो उन प्रतिबद्ध से एक का उपयोग प्रतिबद्ध 3 बार "बार" था। यह एक रोटी टुकड़ा है जहां आप थे।

+1

बहुत बढ़िया, उसने ऐसा किया। बहुत बहुत धन्यवाद! –

+1

आपको पता नहीं है कि आपने मुझे अभी से क्या बचाया है। धन्यवाद, एडम। –

+0

'गिट रीफ्लॉग' ने मेरे लिए चाल बनाई। बहुत बहुत धन्यवाद। – rayryeng