【问题标题】:Similar trick to git bisect WITHIN a commit在提交中与 git bisect 类似的技巧
【发布时间】:2015-05-17 07:49:17
【问题描述】:

使用 git bisect,我们可以放大提交之间可能引入问题的时间。

我想知道是否还有一种方法可以让 git 在 single 提交中遍历文件(组合),以便您找出导致问题的文件/部分?

【问题讨论】:

  • 不,但这是进行频繁小提交而不是单个非常大提交的一个很好的论据。
  • 这是一个假设问题还是您要解决的实际问题?可能有另一种方法可以解决这个问题。
  • @larsks 我知道评论会来的 :-)(这是正确的)。
  • @R0MANARMY 是基于上周,在哪里引入了一个bug,我很快就发现了它在哪个commit,但是我花了很长时间才找到确切的文件。如果 git 只是提出一些文件并签入等,那么我所要做的就是重新加载页面以检查错误。
  • @PascalvKooten 通常不,您不会提交一个文件,除非它代表与特定功能或工作项相关的所有工作。如果您经常发现自己处于单个工作项导致大量提交的情况,您可以尝试查看是否可以进一步分解工作项。

标签: git git-rebase git-bisect


【解决方案1】:

recommended waysplit a commitgit rebase -i $commit_you_want_to_split^ 对应。使用edit rebase 操作切分您的提交,然后使用reset HEAD^ 和一堆git adds 将新的较小提交插入索引。诚然,这不是自动的,但您可以使用大量 sedawk 或 python 编写脚本。有关详细信息,请参阅上面的 SO 链接。

一旦你的提交被截断,你的git bisect 现在将更加精确。

有没有人自动化这个过程?

【讨论】:

    猜你喜欢
    • 2020-08-23
    • 2013-06-20
    • 2020-07-26
    • 1970-01-01
    • 2020-03-25
    • 2012-07-26
    • 1970-01-01
    • 2013-12-12
    • 2015-03-15
    相关资源
    最近更新 更多