Czy istnieje sposób na zmianę zatwierdzenia bez wyskakiwania vi(lub twojego $EDITOR) z opcją modyfikacji wiadomości zatwierdzenia, ale po prostu ponownego użycia poprzedniej wiadomości?
Czy istnieje sposób na zmianę zatwierdzenia bez wyskakiwania vi(lub twojego $EDITOR) z opcją modyfikacji wiadomości zatwierdzenia, ale po prostu ponownego użycia poprzedniej wiadomości?
Odpowiedzi:
Od wersji git 1.7.9 możesz także używać git commit --amend --no-edit aby uzyskać swój wynik.
Zauważ, że nie będzie to obejmować metadanych z drugiego zatwierdzenia, takich jak znacznik czasu, który może, ale nie musi być dla ciebie ważny.
git commit -C HEAD --amendzrobi co chcesz. -COpcja pobiera metadane z innego popełnić.
git config --global alias.amend 'commit --amend -C HEAD'. Następnie możesz użyć go git amendjako skrótu.
--amend, nawet bez żadnej innej opcji, zachowuje datę autora (ale zmienia datę zatwierdzenia). W związku z tym usunąłem mój stary komentarz.
—amend. Możesz utworzyć nowe zatwierdzenie, ale użyć tej samej wiadomości co poprzednie zatwierdzenie. Może to nie wydawać się przydatne, ale domyślnie komunikat zatwierdzenia, gdy —message=“Work in progress (untested)”
Inną (głupią) możliwością jest git commit --amend <<< :wqposiadanie vi (m) as $EDITOR.
... <<< ZZmoże jeszcze mniej pisać;)
... <<< :x:)
Użycie zaakceptowanej odpowiedzi do utworzenia aliasu
oops = "!f(){ \
git add -A; \
if [ \"$1\" == '' ]; then \
git commit --amend --no-edit; \
else \
git commit --amend \"$@\"; \
fi;\
}; f"
to możesz zrobić
git oops
i doda wszystko i poprawi za pomocą tego samego komunikatu
lub
git oops -m "new message"
zmienić, zastępując wiadomość