【发布时间】:2012-08-20 23:38:26
【问题描述】:
在 Rails Gemfile 中,它们之间有什么区别:
gem "gemname", "~> 4.0.1"
和
gem "gemname", "4.0.1"
和
gem "gemname"
还有什么应该在哪里使用以及遵循这种方式的好处?
【问题讨论】:
标签: ruby-on-rails ruby gem gemfile
在 Rails Gemfile 中,它们之间有什么区别:
gem "gemname", "~> 4.0.1"
和
gem "gemname", "4.0.1"
和
gem "gemname"
还有什么应该在哪里使用以及遵循这种方式的好处?
【问题讨论】:
标签: ruby-on-rails ruby gem gemfile
第一个将告诉捆绑程序加载随最后一个(补丁)编号变化的任何 gem。所以 4.0.x 其中 x 为 1 或更大。
第二个只会加载 4.0.1。
第三个将获得有效的最高值(取决于 Gemfile 中其余 gem 的需求),或者将获得 Gemfile.lock 中指定的任何值(如果有的话)。
我错过了你的第二个问题。坦率地说,这取决于。在大多数情况下,我会选择第一个选项,因为它可以让我修复错误,而不必担心它会如何影响我的其他 gem。
【讨论】: