假设我有以下修订版本: rev 1 引入了 bug #1 rev 2 可能引入了 bug #2 rev 3 可能引入了 bug #2 rev 4 可能引入了 bug #2 rev 5 修复了 bug #1 为了验证 bug #2 是在哪个修订版本引入的,需要先修复 bug #1。 在...
使用 git bisect 时,可以运行 git bisect skip 将当前的提交标记为无法构建/无法测试的提交,以尝试让 Git 选择其他提交来代替测试。 在 git bisect skip 后,Git 如何决定要尝试哪个提交呢?实验表明,它不仅是一个相邻的提交,但我无法确定其模式。 ...
我知道可以通过使用git bisect log和git bisect replay修复git bisect会话,具体内容在这个问题的答案中描述。 然而,当我弄乱了一个bisect会话时,那很可能只是一个错误的决定,我希望能够直接修复它(即不中止整个过程)。 例如,我可以想象仅需执行rm ....
我知道关于是否所有提交到主分支的代码都应该保持有效、可工作状态有各种不同的意见和哲学。但我不是来询问这些意见的。 为了论证,让我们假设在 master 分支的历史记录中,我找到了一个实际上是进行中的提交(work-in-progress commit),也就是说,它没有构建成功或导致其他问题...
如果在代码库的根目录之外的任何位置尝试运行git-bisect命令,会收到以下提示: 您需要从工作树的顶层运行此命令。 为什么会这样呢?我不知道其他任何一个git命令有这种要求,也没有明显的原因表明bisect应该特殊对待。手册中也没有提及这个限制。 这其实并不是什么大问题。我只...
我进行了Git二分查找并得到了结果Bisecting: a merge base must be tested [bbdaf1111eea5365c0c94d6045d6263aab718925] Fix display bug with main-stage 我该怎么操作?
理由:我正在尝试用Python实现类似于git bisect的功能,但基本上是针对一系列目录的列表。 我有一个版本号的(长)列表,如下: ['1.0','1.14','2.3','3.1','4'] 我有一个名为works()的函数,它接受一个版本号并返回一个值。 [works(x) f...
我读了一些文章,说git bisect很棒。 然而,我不明白它为什么很棒。 请有经验的人给出一些代码示例来演示: 如何使用它? 它只是像svn blame吗?
我的代码中有一个bug,由于测试失败,很容易被重现。 到目前为止,在这种情况下我使用git-bisect,但只有当只有一个git repo时才有用。 在我的情况下有7个repo。 是否有一种像git-bisect一样的方法可以对N个git仓库进行操作? 更新 有一个“containe...
我正在使用 git bisect 查找引发故障的提交。但是,该范围内很多提交明显与问题无关(因为它们是针对文档或单元测试的提交)。我想让 git bisect 自动跳过影响某些目录中文件的提交。有什么办法可以做到这一点吗?