Yanıtlar:
İki seçeneğiniz var:
Boş bir taahhüt mesajı sağlayın. Bu yeni bir taahhütse ve mesajı henüz :q!kaydetmediyseniz , sadece (kaydetmeden çık) seçeneğini kullanabilirsiniz. Daha önce kaydettiyseniz (veya önceki bir taahhüdü değiştiriyorsanız), tüm günlük mesajını silin ve tekrar kaydedin. Bu Vim'de ggdG+ ile yapılabilir :wq.
Editörden sıfır dışında bir çıkış koduyla çıkmasını sağlayın. Vim'de kullanabilirsiniz :cq(bir hata kodu ile çıkın).
Çalışma kopyanızı her zaman taahhütten önceki durumuna sıfırlayabileceğinizi belirtmek gerekir git reset HEAD^.
git reset HEAD^fazlasını isterse, kabuğunuz ^ satır devamı olarak yorumlanabilir. Deneyin git reset "HEAD^", git reset HEAD^^ya git reset HEAD~1onun yerine bu Yanıt başına: stackoverflow.com/questions/14203952/git-reset-asks-more
:q!bir taahhütte değişiklik yaparken çalışmaz. Taahhüt iletisini güncellemez, ancak değişikliği yürütür :-(:cq değişikliği tamamen iptal eder.Sonuç olarak:
git commit) kullanmayı bırakın :q!.git commit --amend) mesajı (sadece ilk birkaç satır işlemek kaldırmak değil v tutan ve seçmek için ok tuşlarını kullanarak ve ardından Sil düğmesine basarak örneğin bir # ile başlayan). Değişiklikleri uygulamak için ile çıkın:wq ! Kullanırsanız :q!değişiklikler kaybolacak ve önceki tamamlama mesajı kullanılacaktır.VIM'i kullanırken her iki durumda da çıkmak uygun olur :cq- VIM bir hata kodu ile sonlanır ve taahhüt iptal edilir.
:q!.