ठीक एक अलग सिर जुदा?


1453

मैं अपनी रिपॉजिटरी में कुछ काम कर रहा था और देखा कि एक फाइल में स्थानीय परिवर्तन थे। मैं उन्हें अब और नहीं चाहता था, इसलिए मैंने फ़ाइल को हटा दिया, यह सोचकर कि मैं बस एक ताज़ा प्रतिलिपि देख सकता हूँ मैं Git के बराबर करना चाहता था

svn up .

का उपयोग करना git pullकाम नहीं कर रहा था। कुछ बेतरतीब खोज ने मुझे एक ऐसी साइट पर पहुँचाया जहाँ कोई ऐसा करने की सिफारिश करता था

git checkout HEAD^ src/

( srcहटाई गई फ़ाइल वाली निर्देशिका है)।

अब मुझे पता चला कि मेरे पास एक अलग सिर है। मुझे कुछ पता नहीं है कि वह क्या है। मैं पूर्ववत कैसे कर सकता हूं?


69
git checkout masterआपको मास्टर शाखा पर वापस लाएगा। यदि आप किसी भी काम की कॉपी में बदलाव करना चाहते हैं, तो आप शायद करना चाहते हैं git reset --hard
अबे वोल्कर


अगर आपने ऐसा नहीं किया है तो आप कर सकते हैंgit checkout -- src/
thesummersign

इसे आज़माएँ: लिंक । संक्षेप मेंcreate temp branch - checkout temp branch - checkout master - delete temp branch
fidev

@AbeVoelker आपके द्वारा टिप्पणियों में क्या मतलब था working copy changes? क्या आप किसी अन्य कमिटमेंट की जाँच करने के बाद आपके द्वारा किए गए परिवर्तनों का उल्लेख कर रहे हैं (यानी, एक अलग हेड स्टेट में आपके द्वारा किए गए परिवर्तन)?
मिन्ह ट्रान

जवाबों:


2147

अलग किए गए सिर का मतलब है कि आप अब किसी शाखा में नहीं हैं, आपने इतिहास में एक ही कमिट की जाँच की है (इस मामले में पिछले यानी HEAD ^) के लिए प्रतिबद्ध है।

यदि आप अलग किए गए HEAD से जुड़े अपने परिवर्तनों को हटाना चाहते हैं

आपको केवल उस शाखा की जांच करनी होगी, जिस पर आप थे, जैसे

git checkout master

अगली बार जब आपने कोई फ़ाइल बदली है और इसे उस स्थिति में पुनर्स्थापित करना चाहते हैं जो यह अनुक्रमणिका में है, तो फ़ाइल को पहले न हटाएं, बस करें

git checkout -- path/to/foo

यह फ़ाइल फू को उस स्थिति में पुनर्स्थापित कर देगा जो यह सूचकांक में है।

यदि आप अपने परिवर्तनों को अलग-थलग पड़ने वाले HEAD के साथ रखना चाहते हैं

  1. रन git branch tmp- यह एक नई शाखा में आपके परिवर्तनों को बचाएगा जिसे कहा जाता है tmp
  2. Daud git checkout master
  3. यदि आप अपने द्वारा किए गए परिवर्तनों को सम्मिलित करना चाहते हैं master, git merge tmpतो masterशाखा से चलाएँ । आपको masterचलाने के बाद शाखा पर होना चाहिए git checkout master

6
"इससे पहले कि आप इसमें कोई भी बदलाव कर सकें, यह फ़ाइल foo को उस स्थिति में पुनर्स्थापित कर देगा।" -> यह इसे उस स्थिति में पुनर्स्थापित कर देगा जो सूचकांक में है - कृपया संपादित करें
Mr_and_Mrs_D

87
यह त्रुटि पहली बार में क्यों होती है? यह उन चीजों में से एक है, जिनके लिए मुझे कई बार घृणास्पद व्यवहार करना पड़ता है। मर्क्यूरियल के साथ ऐसी समस्याएं कभी नहीं हुईं।
वायलेट जिराफ़

97
@ वायलेटगिरिफ़ यह न तो कोई त्रुटि है और न ही कुछ यादृच्छिक है - जब आप अपनी पिछली प्रतिबद्धताओं की जांच करते हैं तो यह केवल वह स्थिति होती है जब आपकी रिपॉजिटरी चलती है। "डिटैचड हेड" एक चेतावनी के रूप में कार्य करता है जिसे आप उस बिंदु पर किसी भी कार्य को करने का इरादा रखते हुए एक शाखा बनाने या इंगित करना चाहते हैं। लेकिन अगर आप बस उस टैग या कमिटमेंट को देखना चाहते हैं, तो अलग राज्य में होने के बारे में कुछ भी गलत नहीं है।
नील नेमन

22
यदि आप अलग किए गए सिर के लिए प्रतिबद्ध हैं, तो ऐसा न करें, अन्य उत्तर देखें। यदि करते हैं, तो आप पिछले हेड गिट उल्लेख का उल्लेख कर सकते हैंPrevious HEAD position was 7426948...
केसीडी

9
@VioletGiraffe: आपके पास मर्क्यूरियल पर आधारित क्या हो रहा है, इसका एक मानसिक मॉडल है, लेकिन आप Git का उपयोग कर रहे हैं। यदि आप गिट के मॉडल को फिट करने के लिए अपने मानसिक मॉडल को समायोजित करने के लिए तैयार नहीं हैं, तो चीजें यादृच्छिक दिखाई देंगी। ऐसा लगता है कि आप वीआर काले चश्मे के साथ बाहर घूम रहे हैं, और आपको लगता है कि आप एक विमान उड़ा रहे हैं, लेकिन आप वास्तव में सड़क पार कर रहे हैं। आप कारों की चपेट में आने वाले हैं।
आइकनोकॉस्ट

477

यदि आपने ऐसी फाइलें बदली हैं जिन्हें आप खोना नहीं चाहते हैं, तो आप उन्हें धक्का दे सकते हैं। मैंने उन्हें अलग मोड में रखा है और उसके बाद आप मास्टर में बाद में एकीकृत करने के लिए एक अस्थायी शाखा में जा सकते हैं।

git commit -m "....."
git branch my-temporary-work
git checkout master
git merge my-temporary-work

इससे निष्कर्षित:

एक अलग सिर में किए गए प्रतिबद्ध के साथ क्या करना है


27
मुझे लगता है कि यह पसंदीदा समाधान है - खासकर यदि आप व्यक्तिगत संस्करण की जाँच करते समय आपके द्वारा किए गए परिवर्तनों को रखना चाहते हैं।
adswebwork

10
@adswebwork: मैं सहमत हूं। अन्य सभी उत्तर एक पिछली स्थिति में बदलने और स्थानीय रूप से अलग किए गए प्रमुख राज्य में किए गए परिवर्तनों को खोने का सुझाव देते हैं।
Sk8erPeter

6
क्यों नहीं git stash? जैसा कि मेरे दिमाग में सबसे पहली बात यही आती है। एक नई शाखा का निर्माण एक ओवरकिल होगा।
थिसुमर्सिन

2
आप git rebase my-temporary-workशाखा को हटा भी सकते हैं और फिर git branch -d my-temporary-workऐसा प्रतीत होता है जैसे कि आप पहली बार सही शाखा के लिए प्रतिबद्ध हैं।
ज़ोल्टन

@geekay git stashइस मामले के लिए सही उपकरण की तरह ध्वनि करता है। क्या आप इसे प्राप्त करने के लिए सुझाए गए चरणों के साथ उत्तर लिख सकते हैं?
ज़ोल्टन

156

एक अस्थायी शाखा बनाने के बिना एक समाधान।

जब आप पहले से ही इस मोड में कुछ बदल चुके हों और वैकल्पिक रूप से, अपना स्टेटस सेव करना चाहते हों, तो ("फिक्स") एचएएडी स्टेट को कैसे अलग करें

  1. उन परिवर्तनों को करें जिन्हें आप रखना चाहते हैं। यदि आप अलग-अलग HEAD स्थिति में किए गए परिवर्तनों को लेना चाहते हैं, तो उन्हें प्रतिबद्ध करें। पसंद:

    git commit -a -m "your commit message"
    
  2. उन परिवर्तनों को त्यागें जिन्हें आप नहीं रखना चाहते हैं। हार्ड रीसेट अलग-अलग किए गए परिवर्तनों को छोड़ देगा जिन्हें आपने अलग राज्य में रखा था:

    git reset --hard
    

    (इसके बिना, चरण 3 विफल हो जाएगा, अलग-थलग पड़ चुकी फ़ाइलों में संशोधित HEAD के बारे में शिकायत करना।)

  3. अपनी शाखा देखें। उदाहरण के लिए, आपके द्वारा पहले काम की गई शाखा की जाँच करके एचआईएडी की स्थिति से बाहर निकलें।

    git checkout master
    
  4. अपने कमिट्स को संभालो। अब आप चेरी-पिकिंग द्वारा अलग किए गए HEAD राज्य में किए गए कमिट्स को अपने कब्जे में ले सकते हैं, जैसा कि एक अन्य प्रश्न के उत्तर में दिखाया गया है ।

    git reflog
    git cherry-pick <hash1> <hash2> <hash3> …
    

git reset --hardवास्तव में किया गया था मैं की जरूरत थी, क्योंकि मैं स्रोत होने के लिए और स्थानीय परिवर्तनों को हटा दिया जाना चाहिए नदी के ऊपर चाहते हैं।
मार्कस ज़ेलर

महान जवाब, यह मेरे लिए काम किया
MGLondon

130

अलग सिर का अर्थ है:

  1. अब आप एक शाखा पर नहीं हैं,
  2. आपने इतिहास में एक भी कमिटमेंट देखा है

यदि आपके पास कोई परिवर्तन नहीं है: तो आप निम्न आदेश लागू करके मास्टर पर स्विच कर सकते हैं

  git checkout master

यदि आपके पास ऐसे बदलाव हैं जिन्हें आप रखना चाहते हैं:

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

git branch  temp
git checkout master
git merge temp

2
एकदम सही है, फिर शाखा अस्थायी हटाने के बाद
डेवी मेनेजेस

64

यहाँ मैंने जो कुछ महसूस किया उसके बाद मैं एक अलग सिर पर था और पहले से ही कुछ बदलाव कर चुका था।

मैंने बदलाव किए।

$ git commit -m "..."
[detached HEAD 1fe56ad] ...

मुझे कमिट का हैश (1 फ़ेफ़रेड) याद आ गया। फिर मैंने उस शाखा की जाँच की जो मुझे होनी चाहिए थी।

$ git checkout master
Switched to branch 'master'

अंत में मैंने शाखा में कमिटमेंट के बदलावों को लागू किया।

$ git cherry-pick 1fe56ad
[master 0b05f1e] ...

मुझे लगता है कि यह एक अस्थायी शाखा बनाने की तुलना में थोड़ा आसान है।


2
इसका उत्तर होना चाहिए। यह आपकी nuked फ़ाइलों को वापस प्राप्त करता है।
BlindWanderer

2
हां, यह वास्तव में करने के लिए सबसे सरल बात है - अगली बार ऐसा होने पर वेब पर खोज किए बिना याद रखना काफी सरल है। प्रतिबद्ध, नोट हैश, उस शाखा पर वापस लौटें जिसका आप प्रतिबद्ध होना चाहते हैं, और git cherry-pick <hash>
मेसन

समाधान के लिए धन्यवाद। इससे मदद मिली। क्या मैं यह भी जोड़ सकता हूं कि मुझे एक "गिट पुश ओरिजिनल मास्टर" करना था, ताकि मेरे मास्टर और ओरिजिनल / मास्टर एक ही कमिट की ओर इशारा कर सकें।
शलजम 424

1
यह अनिवार्य रूप से टैनियस का उत्तर है (एक वर्ष से अधिक पहले पोस्ट किया गया)।
पीटर मॉर्टेंसन

धन्यवाद इस चीयर्स पिक ने अंतिम डिटैच हेड परिवर्तनों को वापस कर दिया
ओमेगा क्यूब

54

यदि आपने कुछ परिवर्तन किए हैं और फिर महसूस किया है कि आप अलग-थलग पड़े हुए सिर पर हैं, तो इसके लिए एक सरल उपाय है: स्टैश -> चेकआउट मास्टर -> स्टैश पॉप:

git stash
git checkout master   # Fix the detached head state
git stash pop         # Or for extra safety use 'stash apply' then later 
                      #   after fixing everything do 'stash drop'

आपके पास आपके अनवामिटेड परिवर्तन और सामान्य "संलग्न" HEAD होगा, जैसे कुछ भी नहीं हुआ।


2
इस बुरे लड़के को बुकमार्क कर लिया है - एक अस्थायी शाखा बनाने से बचाता है। एक इलाज का काम किया।
टिम टायलर

1
मैं अक्सर एक अलग उपसमूह की जाँच के बाद एक अलग राज्य में समाप्त होता हूं, फिर उसमें परिवर्तन करता हूं। मुझे लगता है कि चीजों को ठीक करने के लिए यह सबसे अच्छा और आसान समाधान है ताकि मैं अपने परिवर्तनों को संरक्षित कर सकूं।
user5359531

1
यदि आप पहले से ही एक अलग राज्य में परिवर्तन शुरू कर चुके हैं तो यह काम नहीं करता है?
दानिजेल

40

जब आप किसी विशिष्ट कमिटमेंट की जांच करते हैं git , तो आप एक अलग हेड स्टेट में समाप्त होते हैं ... अर्थात, आपकी वर्किंग कॉपी अब किसी नामांकित संदर्भ की स्थिति को दर्शाती है (जैसे "मास्टर")। यह रिपॉजिटरी की पिछली स्थिति की जांच करने के लिए उपयोगी है, लेकिन यदि आप वास्तव में परिवर्तनों को वापस लाने की कोशिश कर रहे हैं तो आप क्या चाहते हैं।

यदि आपने किसी विशेष फ़ाइल में परिवर्तन किए हैं और आप बस उन्हें छोड़ना चाहते हैं, तो आप उपयोग कर सकते हैं checkout इस तरह कमांड का :

git checkout myfile

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

git reset --hard HEAD^

हालाँकि, यदि आप अन्य लोगों के साथ भंडार साझा कर रहे हैं, तो git reset विघटनकारी हो सकता है (क्योंकि यह भंडार इतिहास के एक हिस्से को मिटा देता है)। यदि आपने पहले से ही अन्य लोगों के साथ परिवर्तन साझा किया है, तो आप आम तौर पर git revertइसके बजाय देखना चाहते हैं , जो एक "एंटीकोमाइट" उत्पन्न करता है - अर्थात, यह एक नया प्रतिबद्ध बनाता है जो प्रश्न में परिवर्तन "अनडू" करता है।

Git Book में अधिक विवरण हैं।


1
जैसा कि मैंने @ ralphtheninja के जवाब में कहा, git checkout path/to/fooइससे टकराव हो सकता है git checkout some-branch, इसलिए git checkout -- path/to/fooइन टकरावों से बचने के लिए इसका इस्तेमाल करना बेहतर होगा ।
डिएगो लागो

30

HEAD एक पॉइंटर में है, और परिणामस्वरूप यह इंगित करता है - प्रत्यक्ष या अप्रत्यक्ष रूप से - एक विशेष प्रतिबद्ध के लिए:

संलग्न   प्रमुख साधन है कि यह कुछ से जुड़ा हुआ है शाखा (यानी यह बताते हैं एक शाखा के लिए)।
अलग किए गए हेड का अर्थ है कि यह किसी भी शाखा से जुड़ा नहीं है , अर्थात यह सीधे कुछ प्रतिबद्ध की ओर इशारा करता है।

यहां छवि विवरण दर्ज करें

दूसरे शब्दों में:

  • यदि यह सीधे तौर पर एक कमिट की ओर इशारा करता है, तो हेड को अलग कर दिया जाता है
  • यदि यह परोक्ष रूप से किसी प्रतिबद्ध की ओर इशारा करता है , (अर्थात यह एक शाखा की ओर इशारा करता है, जो बदले में एक कमिट की ओर इशारा करता है), तो HEAD संलग्न है

संलग्न / अलग-थलग पड़ने वाली स्थितियों को बेहतर ढंग से समझने के लिए, ऊपर दिए गए चित्रों के चतुष्कोण के लिए अग्रणी चरण दिखाएं।

हम भंडार के एक ही राज्य से शुरू करते हैं (सभी चतुर्थांश में चित्र समान हैं):

यहां छवि विवरण दर्ज करें


अब हम प्रदर्शन करना चाहते हैं git checkout- अलग-अलग चित्रों में अलग-अलग लक्ष्यों के साथ (उनके ऊपर कमांड्स इस बात पर जोर देने के लिए मंद हैं कि हम केवल उन कमांडों को लागू करने जा रहे हैं ):

यहां छवि विवरण दर्ज करें


यह उन आदेशों को पूरा करने के बाद की स्थिति है :

यहां छवि विवरण दर्ज करें

जैसा कि आप देख सकते हैं, हेड कमांड के लक्ष्य की ओर git checkoutइशारा करता है - एक शाखा (चतुष्कोण की पहली 3 छवियां), या (सीधे) चतुष्कोण की अंतिम छवि के लिए।

वर्किंग डायरेक्टरी की सामग्री को भी, हेडड द्वारा इंगित (प्रत्यक्ष या अप्रत्यक्ष रूप से) किए गए कमिट (स्नैपशॉट) के अनुसार किया जाएगा।


इसलिए हम अब उसी स्थिति में हैं जैसे इस उत्तर की शुरुआत में:

यहां छवि विवरण दर्ज करें


6
इसे पढ़ा नहीं, लेकिन आपके द्वारा बनाई गई सुंदर तस्वीरों के लिए मतदान किया;)।
कार्लो वुड

@ कार्लो, धन्यवाद!
MarianD

22

चूंकि "अलग सिर राज्य" आपके पास एक अस्थायी शाखा पर है, बस उपयोग करें git checkout -जो आपको उस अंतिम शाखा पर रखता है जो आप पर थे।


1
सावधान रहें, जब आप अलग किए गए सिर की स्थिति में थे, तो आप अपने किए गए किसी भी काम को ढीला कर देंगे।
अजाक 6

@ Ajak6 आप वास्तव में उन कमिट्स को नहीं खोते हैं। वे अभी भी उपलब्ध हैं git reflogऔर उन्हें एक नई शाखा में या git cherry-pickकिसी मौजूदा शाखा में ले जाया जा सकता है । इस प्रश्न को देखें ।
तनीस

7

आगे @Philippe Gerber के उत्तर को स्पष्ट करने के लिए, यह है:

git चेरी-पिक

इससे पहले cherry-pick, git checkout masterइस मामले में एक आवश्यक है। इसके अलावा, यह केवल एक commitमें के साथ की जरूरत है detached head


6

परिशिष्ट

यदि आप जिस शाखा में लौटना चाहते हैं, वह अंतिम चेकआउट था जिसे आपने बनाया था, आप बस उपयोग कर सकते हैं checkout @{-1} । यह आपको आपके पिछले चेकआउट पर वापस ले जाएगा।

इसके अलावा, आप उदाहरण के लिए, इस कमांड को उर्फ ​​कर सकते हैं, git global --config alias.prevताकि आपको git prevपिछले चेकआउट पर वापस टॉगल करने के लिए टाइप करना पड़े ।


4

"अलग सिर" होने का मतलब है कि HEAD एक विशिष्ट अनाम कमिट को संदर्भित करता है (एक नामित शाखा के विपरीत) (cf: https://git-scm.com/docs/git-checkout अनुभाग अलग किया गया सिर )

समस्या को ठीक करने के लिए, आपको केवल उस शाखा का चयन करना होगा जिसे पहले चुना गया था

git checkout @{-1}


2

जब आप अलग सिर की स्थिति में होते हैं और नई फाइलें बनाते हैं, तो पहले यह सुनिश्चित कर लें कि ये नई फाइलें इंडेक्स में जोड़ी गई हैं, उदाहरण के लिए:

git add .

लेकिन अगर आपने मौजूदा फ़ाइलों को केवल बदल दिया है या हटा दिया है, तो आप (-a) जोड़ सकते हैं और एक संदेश (-m) के साथ उसी समय पर कर सकते हैं:

git commit -a -m "my adjustment message"

तब आप बस अपनी वर्तमान स्थिति के साथ एक नई शाखा बना सकते हैं:

git checkout -b new_branch_name

आपके पास एक नई शाखा होगी और आपके सभी समायोजन उस नई शाखा में होंगे। इसके बाद आप रिमोट और / या चेकआउट / पुल / मर्ज पर पुश जारी रख सकते हैं।


1

Git ने मुझे बताया कि यह कैसे करना है।

अगर आपने टाइप किया है:

git checkout <some-commit_number>

स्थिति को बचाएं

git add .
git commit -m "some message"

फिर:

 git push origin HEAD:<name-of-remote-branch>

1

मैं अपने बदलावों को बनाए रखना चाहता था, मैं बस यही कर रहा हूं ...

git add .
git commit -m "Title" -m "Description"
(so i have a commit now example: 123abc)
git checkout YOURCURRENTBRANCH
git merge 123abc
git push TOYOURCURRENTBRANCH

वह काम मेरे लिए


1

आम तौर HEADपर एक शाखा को इंगित करता है। जब यह एक शाखा को इंगित नहीं कर रहा है जब यह एक प्रतिबद्ध हैश की ओर इशारा करता है जैसे 69e51कि इसका मतलब है कि आपके पास एक अलग हेड है। आपको समस्या को ठीक करने के लिए इसे दो शाखा इंगित करने की आवश्यकता है। इसे ठीक करने के लिए आप दो काम कर सकते हैं।

  1. git checkout other_branch // संभव नहीं जब आपको उस कमिट में कोड की आवश्यकता हो hash
  2. एक नई शाखा बनाएँ और नए बनाए गए शाखा के लिए प्रतिबद्ध हैश को इंगित करें।

हेड को एक शाखा को इंगित करना चाहिए, न कि एक प्रतिबद्ध हैश गोल्डन नियम है।


यही कारण है कि मुझे यह बहुत त्रुटि लगी। मैंने एक संशोधन की जाँच की और फिर शाखा की जाँच करने के बजाय वर्तमान / नवीनतम संशोधन के लिए फिर से वापस जाँच की, जिसने सिर को ठीक से संलग्न किया होगा। सहायता के लिए धन्यवाद।
राहुल ठाकुर

1

अलग किए गए सिर का अर्थ है कि आपने अपनी शाखा की ठीक से जाँच नहीं की है या आपने अभी-अभी एक एकल कमिटमेंट की जाँच की है।

यदि आप इस तरह के मुद्दे का सामना करते हैं तो पहले संघर्ष करें अपने स्थानीय परिवर्तनों को ताकि आप अपने परिवर्तनों को न खोएं।

उसके बाद ... कमांड का उपयोग करके अपनी इच्छित शाखा की जाँच करें:

मान लीजिए कि आप शाखा MyOriginalBranch चाहते हैं:

git चेकआउट -b someName मूल / MyOriginalBranch


1

तुमने शायद किया git reset --hard origin/your-branch

बस करने की कोशिश करो git checkout your-branch


0
git pull origin master

मेरे लिए काम किया। यह स्पष्ट रूप से दूरस्थ और शाखा का नाम देने के बारे में था।


0

मेरे मामले में, मैं दौड़ता हूं git statusऔर मैंने देखा कि मेरे पास अपनी वर्किंग डायरेक्टरी पर कुछ अनट्रेक्टेड फाइलें थीं।

मुझे केवल उन्हें साफ करना था (क्योंकि मुझे उनकी आवश्यकता नहीं थी) मैं जो प्रदर्शन करना चाहता था, उसे चलाने के लिए।


0

यह मेरे लिए काम करता है, यह अलग सिर के लिए एक नई शाखा प्रदान करेगा:

git checkout new_branch_name अलग किया गया_हैडर_गर्भ_नाम


0

अलग किए गए हेड का अर्थ है कि आप वर्तमान में किसी भी शाखा में नहीं हैं। यदि आप अपने वर्तमान परिवर्तनों को कम करना चाहते हैं और बस एक नई शाखा बनाना चाहते हैं, तो आप यही करते हैं:

git commit -m "your commit message"
git checkout -b new_branch

बाद में, आप संभवतः इस नई शाखा को अन्य शाखाओं के साथ मिलाना चाहते हैं। हमेशा मददगार है " git a dog" कमांड:

git log --all --decorate --oneline --graph
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.