make changes
git commit 'made changes' -a
git push origin
make more changes
git ammend -a
git push origin
我注意到当我执行git commit --ammend -a
然后尝试推送到远程仓库时,它需要强制推送(git push -f
)。
我的猜测是因为它试图推动相同(?这是什么?)提交代码但注意到文件中的差异。
这是正确/正常吗?
答案 0 :(得分:7)
git commit --amend
或git commit --author=<author>
,如果修改了任何内容,将生成不同的SHA1。
然后,是的,将需要git push -f
。
git amend
可以定义为此blog post中的别名:
git config --global alias.amend 'commit --amend -C HEAD'
此别名添加
git amend
命令,该命令在修改时将重用当前提交消息。