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-editpara 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 --amendfará o que você quiser. A -Copção pega os metadados de outra confirmação.
git config --global alias.amend 'commit --amend -C HEAD'. Você pode usar git amendcomo 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 <<< :wqse você tem vi (m) como $EDITOR.
... <<< ZZpode 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