Git bisect是否依赖于gem?

时间:2015-06-09 18:13:10

标签: git rubygems

我有Ruby gem和测试,它依赖于另一个gem。

最近有一个新版本的其他宝石,由于行为的改变而打破了我宝石的测试套件。

我知道其他gem的哪个次要版本会受到责备,但我想找出确切的提交(点发布之间有几百次提交),以便我能够理解问题所在。

我之前使用git bisect来缩小我的仓库中的错误提交范围,但是我可以为依赖项执行类似的操作吗?

1 个答案:

答案 0 :(得分:1)

你可以通过一些小小的尝试来做到这一点:

  1. 克隆本地宝石的回购
  2. 更新您的gemfile以从git获取gem,确保指定分支
  3. 在您的应用程序目录中运行

    bundle config --local local.mygem path/to/checkout
    
  4. 您的应用现在应该从结帐中加载该gem,您应该可以在该repo上运行git bisect。在签出每个修订版本之后,可能需要重新启动zeus,spring之类的东西 - 他们倾向于观察gemfile.lock,因此可能不会注意到gem本身是否会发生变化。

    完成后,将更改还原到gemfile并编辑.bundle/config以删除覆盖。