如何将某个提交从Git历史记录中删除?代码举例讲解

在Git中删除某个提交,可以使用git rebase命令。

git rebase 的用法如下:

  1. git rebase -i 进入rebase交互模式,可以对具体提交进行删除、合并等操作
  2. 交互模式中,找到需要删除的提交行,将pick改为drop
  3. 保存并退出,该提交将从历史记录中删除

例如:
查看提交记录:

$ git log --oneline
28ea823 (HEAD -> master) Modify readme 
c466f1a Modify readme
a13b91e Add readme

进入rebase交互模式,将第二次提交c466f1a删除:

$ git rebase -i a13b91e

pick 28ea823 Modify readme 
drop c466f1a Modify readme
pick a13b91e Add readme

保存并退出,现在提交记录变为:

$ git log --oneline
28ea823 (HEAD -> master) Modify readme
a13b91e Add readme

c466f1a提交已经从历史记录中删除。
我们可以看到,使用git rebase -i可以轻松删除不必要的提交记录。