如何配置Bundler以使用本地Gem依赖

3

Qt库在OSX 12(Sierra)上出现问题,这是gem capybara-webkit的依赖之一。因此,如果Gemfile中包含capybara-webkit,那么目前大多数人的bundle install将会失败。

一个解决方法,需要手动安装Qt,然后使用本地版本来安装gem...

$ PATH=~/Qt5.5.1/5.5/clang_64/bin:$PATH gem install capybara-webkit

我想配置bundler以始终使用本地的Qt副本,这样我就不必在每个gemset中记住要这样做。这可行吗?我查看了Bundler配置文档,但没有找到我需要的内容。
理想情况下,我希望找到一个解决方案,使用便携式配置文件,可以传递给我的团队,而不是一系列他们都必须运行的命令。
谢谢任何建议!
1个回答

1
尝试添加一个本地git仓库来使用Bundler。
Bundler还允许您在本地使用git仓库而不是使用远程版本。这可以通过设置本地覆盖来实现:
bundle config local.GEM_NAME /path/to/local/git/repository
例如,为了使用本地Rack存储库,开发人员可以调用:
bundle config local.rack ~/Work/git/rack
现在,将使用本地覆盖而不是检出远程git存储库。与路径源类似,每次本地git存储库更改时,都会自动捕获Bundler的更改。这意味着本地git存储库中的提交将更新Gemfile.lock中的修订版到本地git存储库修订版。这需要与git子模块一样的注意。在推送到远程之前,您需要确保已推送本地覆盖,否则您可能会指向仅存在于本地计算机中的提交。
如果您当前的Qt本地副本不在git仓库中,则可以简单地克隆主要仓库并在计算机上本地推送更改。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接