1

Gem 开发指南说 Gemfile.lock 文件“应该始终检查到版本控制中”。然而,这不适用于宝石。对于应用程序,例如 Rails 应用程序、Sinatra 应用程序等,这是真的。宝石也不一样。

有关说明,请参阅 Yehuda 对 .gemspec、Gemfile 和 Gemfile.lock 文件的角色的指导:Clarifying the roles of .gemspec and Gemfile

我不明白他的理由。如果我的 gem 依赖于 Rails 3 并且与 Rails 4 不兼容怎么办?然后我不需要提交我的 Gemfile.lock ,它指定我的 gem 只与 Rails 3 兼容吗?

4

1 回答 1

1

这篇文章有点过时了(大约 6 岁),尽管它的优点在于 gemspec 将保持版本控制。如果您的 gem 依赖于特定的 rails 版本,您将添加:

s.add_dependency "rails", "3.2"

当用户尝试在 Rails > 3.2 上使用您的 gem 时,依赖项就会启动。

希望这能回答你的问题。如果没有,请澄清,我会更新这篇文章。

于 2016-08-04T15:37:28.600 回答