2

我刚刚意识到我在最后 8 次提交中的某个地方引入了内存泄漏。最简单的解决方案是恢复到 8 次提交,然后小心地重新添加更改。最简单的方法是什么?

谢谢!

4

2 回答 2

6

看看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>为您和您之间的每个后续提交临时提交。

于 2011-03-21T15:36:29.393 回答
1

将您的 master 克隆到另一个分支,然后将 master 克隆git reset --hard到有问题的提交。然后用于git cherry pick将每个从备份分支恢复的提交引入到主分支并检查。如果一切正常,则继续下一次提交,依此类推。

如果您不熟悉这些命令,请在实际继续之前阅读我所说的命令。:-)

于 2011-03-21T15:36:07.837 回答