想象一下,您在master分支机构上,并且某些工作未按预期进行(引入了回归),但是您不知道在哪里。您所知道的是,这在上一发行版中一直有效(例如,已被标记,或者您知道提交哈希,请old-rel在此处进行)。
Git为您提供帮助,找到错误的提交,该错误的提交以很少的步骤(二进制搜索)引入了回归。
首先开始平分:
git bisect start master old-rel
这将告诉git这master是一个损坏的修订版(或第一个损坏的版本),并且old-rel是最新的已知版本。
Git现在将在两次提交的中间检查一个分离的头部。现在,您可以进行测试了。取决于它是否有效
git bisect good
要么
git bisect bad
。万一这个提交不能被测试,您可以轻松地git reset测试一下,git willl会照顾到这一点。
几个步骤后,git将输出错误的提交哈希。
为了终止二等分过程,只需发出
git bisect reset
和git将恢复以前的状态。