git - 我想将我的主分支恢复到 8 次提交前的状态

标签 git revert

我刚刚意识到我在最后 8 次提交中的某处引入了内存泄漏。 最简单的解决方案是恢复到 8 次提交之前,然后小心地添加更改 返回。执行此操作的最简单方法是什么?

谢谢!

最佳答案

看看 git bisect .这听起来正是您要找的东西。

基本上,您告诉它历史记录中已知的好点和已知的坏点,然后它会帮助您执行二进制搜索,直到找到有问题的提交。

这里有一个使用教程:http://www.kernel.org/pub/software/scm/git/docs/user-manual.html#using-bisect

但是,如果您不想那样做,请在您现在所在的位置创建一个临时分支,然后执行一堆 git reset HEAD^一次提交一个,或者做 git reset HEAD~8然后 git cherry-pick <sha1>对于您和您的临时提交之间的每个后续提交。

关于git - 我想将我的主分支恢复到 8 次提交前的状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5379880/

相关文章:

git - rebase 依赖主题分支

git - 我对 git revert 的工作原理感到困惑

Perforce 恢复显示 "file(s) not opened on this client"

Git revert 没有按预期工作

version-control - 如何恢复 CVS 中的重大变化?

git - 如何恢复/取消 git reset --soft HEAD~20

git - 如何从 Git 跟踪中排除 R.java(事后)?

git - 如何在提交后的钩子(Hook)脚本中获取项目路径?(git)

git - 是否有可能获得 diff3 merge 冲突或 libgit2 中的复合 diff 的行的起源?

git - 在 Visual Studio 代码中设置 github 个人访问 token