我经常会有如下的工作流程:
我不能使用 git commit --amend,因为它不是我需要更改的最新提交。向第一次提交的 而不碰第二个?添加更改的最佳方法是什么
git commit --amend
您可以使用 git rebase来解决这个问题。运行 git rebase -i sha1~1,其中 sha1是要更改的提交散列。找到您想要更改的提交,并将“ pick”替换为“ edit”,如 rebase 编辑器的注释中所述。当您从那里继续时,您可以编辑该提交。
git rebase
git rebase -i sha1~1
注意,这将改变提交的 sha1和所有子提交的 sha1——换句话说,这将从那一点开始重写历史。您可以通过这种方式破坏存储库,但是如果您没有进行推送,那么这并不是什么大问题。