3
make changes
git commit 'made changes' -a
git push origin
make more changes
git ammend -a
git push origin

我注意到,当我执行 agit commit --ammend -a然后尝试推送到远程仓库时,它需要我强制推送(git push -f)。

我的猜测是因为它试图推送相同的(?这个词是什么?)提交代码,但注意到文件中的差异。

这是正确/正常的吗?

4

1 回答 1

7

Agit commit --amend或 a git commit --author=<author>,如果有任何修改,将生成不同的 SHA1。
那么,是的,git push -f将需要一个。

git amend可以定义为这个博客文章中的别名:

git config --global alias.amend 'commit --amend -C HEAD'

此别名添加了一个git amend命令,该命令将在修改当前提交消息时重用它。

于 2012-09-30T19:41:34.537 回答