जवाबों:
आपके पास दो विकल्प हैं:
एक खाली प्रतिबद्ध संदेश प्रदान करें। यदि यह एक नई प्रतिबद्धता है और आपने अभी तक संदेश नहीं सहेजा है, तो आप बस उपयोग कर सकते हैं :q!(बिना बचत के)। यदि आपने पहले ही बचत कर ली है (या आप पिछली कमिट में संशोधन कर रहे हैं), तो बस पूरे लॉग संदेश को हटा दें और फिर से सेव करें। यह विम में ggdG+ के साथ किया जा सकता है :wq।
एक गैर-शून्य निकास कोड के साथ संपादक से बाहर निकलें। विम में, आप उपयोग कर सकते हैं :cq(एक त्रुटि कोड के साथ छोड़ दें)।
यह ध्यान देने योग्य है कि आप हमेशा अपनी कार्यशील प्रतिलिपि को उस स्थिति में रीसेट कर सकते हैं जिस स्थिति में वह प्रतिबद्ध था git reset HEAD^।
git reset HEAD^अधिक के लिए पूछते हैं, तो आपका शेल ^ निरंतरता के रूप में व्याख्या कर सकता है। इस उत्तर के लिए प्रयास करें git reset "HEAD^", git reset HEAD^^या git reset HEAD~1इसके बजाय: stackoverflow.com/questions/14203952/git-reset-asks-more
:q!जब एक संशोधन में काम नहीं करता है। यह प्रतिबद्ध संदेश को अद्यतन नहीं करता है, लेकिन यह संशोधन को कार्यान्वित करता है :-(:cq पूरी तरह से संशोधन को रद्द कर देता है।सारांश में:
git commit) का उपयोग करना छोड़ दें :q!।git commit --amend) प्रतिबद्ध संदेश को हटा दें (केवल पहली कुछ पंक्तियाँ # के साथ शुरुआत नहीं कर रही हैं ) उदाहरण के लिए v को पकड़कर और इसे चुनने के लिए तीर कुंजियों का उपयोग करके और फिर हटाएं दबाएं। परिवर्तन लागू करने के लिए छोड़ो:wq ! यदि आप उपयोग :q!करते हैं तो परिवर्तन खो जाएगा और पिछले प्रतिबद्ध संदेश का उपयोग किया जाएगा।VIM का उपयोग करते समय इसे छोड़ना दोनों ही मामलों में ठीक है :cq- VIM एक त्रुटि कोड के साथ छोड़ देगा और कमिट निरस्त हो जाएगा।
:q!vim से बाहर निकलने के लिए प्रवेश करने से पहले Esc को प्रस्तुत करने की आवश्यकता है ।