半自动查找错误提交
想象一下,你在 master
分支上,有些东西没有按预期工作(引入了回归),但你不知道在哪里。所有你知道的是,那是在最后一个版本中工作(例如,标记或你知道提交哈希,让我们在这里采取 old-rel
)。
Git 为你提供了帮助,找到了错误的提交,它以非常少的步骤(二进制搜索)引入了回归。
首先开始一分为二:
git bisect start master old-rel
这将告诉 git master
是一个破损的版本(或第一个破碎版本),old-rel
是最后一个已知的版本。
Git 现在将检查两个提交中间的分离头。现在,你可以进行测试。取决于它是否有效问题
git bisect good
要么
git bisect bad
。如果无法测试此提交,你可以轻松地测试并确认该提交,git 将负责此操作。
经过几个步骤后,git 将输出错误的提交哈希。
为了中止 bisect 过程只是问题
git bisect reset
和 git 将恢复以前的状态。