改完代码后发现只是想补到前面某个提交里,不想最后再手动整理 commit message,可以试试 --fixup。
环境:Git 2.25+,在仓库里执行:
git log --oneline -5
git commit --fixup <commit>
第一条先找到要补的那条提交,第二条会生成一个类似 fixup! xxx 的新提交。后面整理历史时再跑:
git rebase -i --autosquash <base>
Git 会自动把这条 fixup 提交排到目标提交旁边,并标好 fixup,不用自己在交互界面里搬来搬去。
这个适合还没推到共享分支的本地提交。已经推给别人用的分支就别随便 rebase 了,容易把协作的人坑到。