如何修改特定提交?
内容来自 DOC https://q.houxu6.top/?s=如何修改特定提交?
我有以下提交历史:
HEADHEAD~HEAD~2HEAD~3
git commit --amend 修改当前的 HEAD 提交。但是我该如何修改 HEAD~3?
请使用 git rebase。例如,要修改提交 bbc643cd,请运行以下命令:
git rebase --interactive bbc643cd~
请注意命令末尾的波浪号 ~,因为您需要将 bbc643cd 之前的提交应用到其上(即 bbc643cd~)。
在默认编辑器中,将提及 bbc643cd 的行中的 pick 修改为 edit。
保存文件并退出。git 将解释并自动执行文件中的命令。您会发现自己回到了刚刚创建了 bbc643cd 提交的情况。
此时,bbc643cd 是您的最后一个提交,您可以 轻松地对其进行修正。进行更改后,使用以下命令提交它们:
git commit --all --amend --no-edit
然后,使用以下命令返回到先前的 HEAD 提交:
git rebase --continue
警告:请注意,这将更改该提交及其所有子提交的 SHA-1 ——换句话说,这将从该点开始重写历史记录。[如果您使用 git push --force 命令进行推送,可能会破坏存储库]。

浙公网安备 33010602011771号