Odpowiedzi:
Masz dwie opcje:
Podaj pusty komunikat zatwierdzenia. Jeśli jest to nowy zatwierdzenie, a wiadomość nie została jeszcze zapisana, możesz po prostu użyć :q!(wyjść bez zapisywania). Jeśli już zapisałeś (lub zmieniasz poprzednie zatwierdzenie), po prostu usuń cały komunikat dziennika i zapisz ponownie. Można to zrobić za pomocą ggdG+ :wqw Vimie.
Poproś edytora o wyjście z niezerowym kodem wyjścia. W Vimie możesz użyć :cq(wyjść z kodem błędu).
Warto zauważyć, że zawsze możesz zresetować kopię roboczą do stanu, w jakim była przed zatwierdzeniem git reset HEAD^.
git reset HEAD^poprosi o więcej, twoja powłoka może interpretować ^ jako kontynuację linii. Spróbuj git reset "HEAD^", git reset HEAD^^lub git reset HEAD~1zamiast tego na tę odpowiedź: stackoverflow.com/questions/14203952/git-reset-asks-more
:q!nie działa podczas zmiany zatwierdzenia. Nie aktualizuje komunikatu zatwierdzenia, ale wykonuje zmianę :-(:cq całkowicie przerywa poprawkę.Podsumowując:
git commit) Zakończ używając :q!.git commit --amend) Usuń komunikat zatwierdzenia (tylko kilka pierwszych wierszy, które nie zaczynają się od #), na przykład przytrzymując v i używając klawiszy strzałek, aby je wybrać, a następnie naciskając klawisz Delete. Wyjdź z, :wqaby zastosować zmiany ! Jeśli użyjesz, :q!zmiany zostaną utracone i użyty zostanie poprzedni komunikat zatwierdzenia.Podczas korzystania z VIM w obu przypadkach można wyjść z :cq- VIM zakończy działanie z kodem błędu i zatwierdzenie zostanie przerwane.
:q!do wyjścia z vima.