[英]I want to revert my master branch to state 8 commits ago
我刚刚意识到我在最近的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>
。
将您的master克隆到另一个分支,然后在master git reset --hard
到有问题的提交。 然后使用git cherry pick
将每个从备份分支还原的提交引入到master分支并进行检查。 如果一切正常,则继续下一次提交,依此类推。
如果您不熟悉这些命令,请先阅读我所说的命令,然后再继续进行操作。 :-)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.