每当我在命令行上运行任何gem命令时,Bundler都会坚持修改我的Gemfile.lock文件并添加这一行代码:
RUBY VERSION
ruby 2.2.2p95
我不想将这个提交到我们的存储库,因为这意味着使用不同的 Ruby 2.2.2 补丁级别的每个开发人员都会与我在提交上发生冲突。(我已经接受了与 BUNDLED_WITH
行类似的问题。) 但是,除非我提交那一行,否则我将无法部署,因为我们的部署是通过一个 rake 任务运行的,并且运行部署会导致 Bundler 添加此块,随后部署进程说:"等等!你的工作树很脏!你可能正在部署不完整的更改!!!1!" (嗯,不是字面意义上的,但你懂我的意思。)
我能告诉 Bundler 在 Gemfile.lock
中忽略 RUBY VERSION
(最理想情况下还有 BUNDLED_WITH
)吗?这样我们就不必做这种荒谬的操作了吗?
(如何防止 bundler 将平台信息添加到 Gemfile.lock 看起来是同样的问题,但没有答案。)
Gemfile.lock
。实际上这不是锁定,而是通知其他团队成员有一个新的Bundler版本可供使用。它不会强制任何人升级,只是告诉他们“你没有使用团队中的最新版本”。如果没有成员或计算机加入团队,它将保持在该版本。 - Franklin Yu