问题标签 [git-bisect]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1104 浏览

qt - 使用 mingw32-make 编译 qt-webkit 以进行二分

我启动了一个 bisect qtwebkit,当我尝试在第一阶段编译它时,它给了我以下异常。我尝试使用较旧的 qmake,但仍然给出相同的异常。这到底是什么意思,我该如何解决。

0 投票
1 回答
56 浏览

git - 我可以让 git bisect 显示缩短的提交 SHA 吗?

每次二等分后,运行会git bisect生成如下输出:

我可以让它使用部分提交名称前缀,类似于 中使用的那些前缀git log --abbrev-commit吗?像这样的东西:

0 投票
3 回答
9881 浏览

git - 为什么 git-bisect 必须从工作树的顶级目录运行?

如果尝试从存储库根目录以外的任何位置运行任何 git-bisect 命令,则会被告知:

您需要从工作树的顶层运行此命令。

这是为什么?我知道没有其他 git 命令有这个要求,而且我看不出 bisect 应该是特殊的明显原因。手册页也没有提到这个限制。

这真的不是什么大不了的事。我主要只是好奇。

0 投票
3 回答
2619 浏览

git - 如何使用 git bisect:使用单元测试来确定错误提交?

我是 git 新手,刚刚发现“git bisect”。当您可以使用新编写的单元测试(之前不存在)检查错误时,通常如何使用它?

假设我们有一个包含单元测试的存储库,但是 - 通常 - 它们并不完整。在某些版本中,我们发现某个功能不起作用,但我们知道它在之前的某个版本中存在。不幸的是,该功能没有通过单元测试检查。我现在想做的是:

  1. 编写测试用例(当然首先失败)
  2. 使用此测试用例查找使用 git bisect 引入错误的提交
  3. 更正错误并提交修复(和测试用例)

这个用例有一个问题。当 git bisect 检查旧版本时,刚刚插入的测试用例将不存在,所以我不能用它来检查错误。我可以尝试不提交测试,而是将其保留为本地更改。但是想象一下测试文件在中间的某个版本中发生了更改,我很可能会遇到合并冲突。

那么该怎么办?git bisect 一般如何使用?

0 投票
2 回答
723 浏览

git - git bisect 卡住了

我知道topic-branch-7的提示有bug,也知道master的提示没有bug。我想找出在 topic-branch-7 中引入错误的位置。所以我运行了以下命令:

让我感到震惊的是,当我运行 git bisect good 时……什么也没有发生!难道不应该将提交标记为好,找到这个提交和错误提交之间的中点,然后检查那个提交吗?为什么什么都没有发生?

0 投票
1 回答
46 浏览

git - 在使用正在积极开发的库时运行 git bisect

我有两个项目,LogViewer 和 LogAnalyzer,它们都在单独的 git 存储库中开发,而 LogViewer 依赖于 LogAnalyzer。我正在尝试在 LogViewer 上进行 git bisect,但每次我尝试测试新提交时,我都必须在具有正确 API 的 LogAnalyser 中查找并签出一个提交,这既烦人又耗时。有一个更好的方法吗?

0 投票
1 回答
408 浏览

git - 是否可以使用 git-bisect 来追踪可能在两个存储库之一中的问题?

我从事的项目(出于此问题范围之外的原因)在两个 git 存储库之间分离。它是一个 Web 项目,有一个公共库层(存储在存储库 A)和一个特定的项目层(存储在存储库 B)。

是否有一种有效的工作方法来确定哪个提交引入了特定错误,因为它可能在任一存储库中,使用git-bisect?我尝试过诸如git-bisect在 B 上执行 a 时保持 A 中的提交不变等,但交互过于复杂,因为 B 中的更改通常取决于 A,反之亦然。(这些更改与我正在搜索的错误无关,但会阻止网站加载,因此我进行了有效的测试)。

有没有办法可以链接这两个git-bisects 以便一个git bisect goodbad一个存储库检查另一个存储库中最接近时间的提交?或者暂时合并它们以某种方式测试它们?

如果有一种方法可以缩小搜索范围,这将是一个开始。

0 投票
4 回答
14443 浏览

git - 合并提交的 Git bisect

我有一个看起来像这样的历史:

我正在尝试了解更多信息git bisect,但在这段历史中遇到了麻烦。我知道这107ca95是好3830e61是坏。当我运行 agit bisect时,提交107ca95..3e667f8被忽略。我碰巧知道这43a07b1是引入回归的提交,但它从未被评估过。

这大致是我所做的:

无论我做什么,107ca95..3e667f8都不会被检查出来进行测试。

有什么方法可以让我在平分过程中基本上“展平”历史来测试这些提交?我知道我可以使用交互rebase来展平历史,但我不想这样做。

0 投票
3 回答
3534 浏览

git - 如何仅在更改某个文件的提交上运行 git bisect?

我有一个很久以前引入的错误,测试它很痛苦。但是,我强烈怀疑引入错误的更改发生在一个特定的源代码文件中。

我可以在更改该文件的提交子集上运行 git bisect 吗?

0 投票
1 回答
11117 浏览

git - 如何中止 Git Bisect

我通过指定好的和坏的修订开始我的 git bisect,但我认为他们没有注册。此外,当我试图指定 git bisect 好坏时,我认为 git 没有做任何事情。我想中止整个平分,以便我可以重新启动操作。git bisect reset似乎是我正在寻找的东西,但我想在可能弄乱任何东西之前仔细检查。