我经常使用git rebase -i HEAD~N
来压缩/修复我所有的interm提交,或者我刚刚做的那个提交,然后推送到上一个。
我了解了git commit --fixup HEAD
这可以帮助我避免一些击键。
问题是它添加了" fixup!"到上一个提交消息,任何方法让它停止这样做?
答案 0 :(得分:2)
如果您只想将当前暂存的更改添加到上次提交,则可能应该使用
git commit --amend --no-edit
--no-edit
git的不会提示新的提交消息。
正如@phd所说,修复与rebase -i --autosquash
答案 1 :(得分:0)
git commit --fixup
不是一个独立的命令,它是一系列命令的一部分。它应该用在这样的场景中:使用此 fixup 标记创建许多提交,然后运行git rebase --interactive --autosquash
; git自动将消息与 fixup 标记组合在一起。
所以不,除了git commit --amend
之外,没有办法删除这些标记。
答案 2 :(得分:0)
即使您的原始提交不再是HEAD,您仍继续使用git commit --fixup HEAD
吗?
首次修复提交:
git commit --fixup HEAD
第二次修正提交:
git commit --fixup HEAD~1
然后你没有得到越来越多的“修复!”标签前置。