【发布时间】:2016-09-01 18:10:03
【问题描述】:
我的 git 存储库中有一个 ruby 程序,供团队使用。它直接从 git repo 中执行。我不希望所有团队成员都必须处理 gem,所以我希望在系统范围内(在共享磁盘上)安装生产级 gem。 Bundler 将使用 git 控制的 Gemfile.lock 来决定要拾取哪些 gem。
为了开发,我经常使用 --user-install 安装 gem。
问题:我可能会不小心推送使用仅由用户安装的 gem 的更改,这会在其他团队成员拉动并尝试运行时破坏他们。
如何确保在系统范围内安装所有非开发 gem?
是否有我可以运行的捆绑命令来检测这一点并引发错误?或者我能以某种方式让我的黄瓜测试只使用系统 gem 运行吗?
【问题讨论】:
-
我还不确定我是否了解您的团队成员设置。谁使用哪台计算机与哪个共享或不共享存储库?对我来说,描述有点“闻起来”,好像有更好的方法来做到这一点(考虑过网络应用程序?)关于你的问题,我认为@Ginty 的答案是你所需要的。
-
@Felix,每个团队成员都有自己的 repo 克隆,其中包含 ruby 程序。但我不希望每个团队成员每次添加新的第三方 gem 时都必须运行 bundler。