【问题标题】:Git bisect for a gem dependency?用于gem依赖的Git bisect?
【发布时间】:2015-06-09 18:13:09
【问题描述】:

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

最近有另一个 gem 的新版本,由于行为的变化,它破坏了我的 gem 的测试套件。

我知道应该归咎于另一个 gem 的哪个次要版本,但我想找出确切的提交(点发布之间有数百个提交),以便我了解问题出在哪里。

我之前使用过 git bisect 来缩小我的 repo 中的错误提交,但我可以为依赖项做类似的事情吗?

【问题讨论】:

    标签: git rubygems


    【解决方案1】:

    你可以稍微摆弄一下:

    1. 在本地克隆 gem 的 repo
    2. 更新您的 gemfile 以从 git 获取 gem,确保您指定了一个分支
    3. 在您应用的目录中运行

      bundle config --local local.mygem path/to/checkout
      

    您的应用现在应该从您的结帐中加载该 gem,并且您应该能够在该 repo 上运行 git bisect。 zeus、spring 之类的东西可能需要在每个修订版签出后重新启动 - 他们倾向于查看 gemfile.lock,因此可能不会注意到 gem 本身是否发生变化。

    完成后,恢复对 gemfile 的更改并编辑 .bundle/config 以删除覆盖。

    【讨论】:

      猜你喜欢
      • 2020-07-26
      • 1970-01-01
      • 2018-01-09
      • 2017-04-24
      • 2016-11-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多