2011-10-20 12 views
6

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

.. -- master -- new commit 

कि सबसे आसान तरीका क्या है?

वर्तमान में, मैं पुरानी शाखा में प्रतिबद्ध हूं, फिर नई शाखा बनाएं और अंत में पुरानी शाखा को रीसेट करें। लेकिन यह वास्तव में बदसूरत है।

+2

[गिट: मौजूदा काम को नई शाखा में कैसे स्थानांतरित करें?] के संभावित डुप्लिकेट?] (Http://stackoverflow.com/questions/1394797/git-how-to-move-existing-work-to-new-branch) – brendan

उत्तर

4
git checkout -b branch  # create new branch out of current head 
git add <files>    # the changes you had done in your working directory will be carried over 
git commit -m "message"  # commit! 
+0

इस सवाल में उल्लिखित है "लेकिन जब यह प्रतिबद्धता का समय आता है तो मुझे एहसास होता है कि मैं एक नई शाखा में प्रतिबद्ध होना पसंद करूंगा" – COD3BOY

+0

@ संजय - हाँ और आपका मुद्दा है? – manojlds

+0

@ user1004474 - इसे आज़माएं। शाखा स्विच करते समय दोनों अस्थिर और चरण परिवर्तन होंगे। – manojlds

1

यह अगर आप पहले नई शाखा बनाने थोड़ा आसान है:

$ git checkout -b new_branch 
$ git commit 
+0

बिंदु यह है कि मैंने समय से पहले इसकी योजना नहीं बनाई थी, इसलिए परिवर्तन पहले किए गए थे (और गिट एड के साथ इंडेक्स में जोड़े गए कुछ) और फिर मैं शाखा का फैसला करता हूं। – tros443

+0

@ user1004474: यह अभी भी काम करता है। आप एक 'गिट चेकआउट -बी new_branch' चला सकते हैं चाहे आप में परिवर्तन हो या चाहे वे इंडेक्स में जोड़े गए हों या नहीं। – hammar

+0

हां आप सही हैं – tros443

0

एक और संभावना है कि आप आगे जाना है और उन्हें master शाखा के लिए प्रतिबद्ध करने के लिए है, तो बंद एक और शाखा नई HEAD से काट (feature कहें)। एक बार ऐसा करने के बाद, आप git reset काम करने से पहले स्थिति में मास्टर कर सकते हैं।

+0

ठीक है, आपने 'वर्तमान में नहीं पढ़ा, मैं पुरानी शाखा में प्रतिबद्ध हूं, फिर नई शाखा बनाएं और अंत में पुरानी शाखा को रीसेट करें। लेकिन यह वास्तव में बदसूरत है। फिर। – manojlds

+0

हाँ। मैंने यह खो दिया। मुझे नहीं लगता कि यह बदसूरत है हालांकि एफडब्ल्यूआईडब्ल्यू। –

+0

इसे करना आसान बनाता है, लेकिन यह बदसूरत आईएमओ है – manojlds

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