Existe uma maneira de alterar uma confirmação sem vi
(ou a sua $EDITOR
) aparecer com a opção de modificar sua mensagem de confirmação, mas simplesmente reutilizando a mensagem anterior?
Existe uma maneira de alterar uma confirmação sem vi
(ou a sua $EDITOR
) aparecer com a opção de modificar sua mensagem de confirmação, mas simplesmente reutilizando a mensagem anterior?
Respostas:
Desde a versão git 1.7.9, você também pode usar git commit --amend --no-edit
para obter seu resultado.
Observe que isso não incluirá metadados de outras confirmações, como o carimbo de data / hora, que pode ou não ser importante para você.
git commit -C HEAD --amend
fará o que você quiser. A -C
opção pega os metadados de outra confirmação.
git config --global alias.amend 'commit --amend -C HEAD'
. Você pode usar git amend
como um atalho.
--amend
, mesmo sem nenhuma outra opção, preserva a data do autor (mas altera a data de confirmação). Como tal, removi o meu antigo comentário.
—amend
. Você pode criar uma nova confirmação, mas usar a mesma mensagem que a confirmação anterior. Isso pode não parecer útil, mas a minha mensagem de confirmação por padrão quando eu só estou salvando meu trabalho sem ter que pensar em uma boa mensagem de commit, eu continuo reutilizar a mensagem—message=“Work in progress (untested)”
Outra possibilidade (boba) é git commit --amend <<< :wq
se você tem vi (m) como $EDITOR
.
... <<< ZZ
pode ser ainda menos digitação;)
... <<< :x
:)
Usando a resposta aceita para criar um alias
oops = "!f(){ \
git add -A; \
if [ \"$1\" == '' ]; then \
git commit --amend --no-edit; \
else \
git commit --amend \"$@\"; \
fi;\
}; f"
então você pode fazer
git oops
e ele adiciona tudo e altera usando a mesma mensagem
ou
git oops -m "new message"
alterar substituindo a mensagem