1

大多数 Rails 项目的 gemfile 中都包含一个非常特定的版本,就在rails new foo.

例如gem 'rails', '3.1.3'

将其更改为允许点版本并例如将rails定义为不是更好gem 'rails', '~>3.2'吗?

rails 版本编号是如何完成的?我看到 dot-releases 之间的重大变化,例如从 3.0 升级到 3.1 需要相当大的变化(主要是资产管道)。子版本的情况如何?3.2.1 是 3.2.0 的 bugfixonly 版本吗?

4

1 回答 1

1

没有任何理由不使用~>约束,但您应该输入:

gem 'rails', '~>3.1.3'

因为这意味着任何 3.1.x 至少是 3.1.3。Putting~>3.1意味着与任何 Rails 版本 3.x 的兼容性。

据我所知,Rails 版本控制遵循语义版本控制。

但是,我认为指定确切版本的想法是您阅读每个版本的发行说明,并做出具体努力来验证它是可以的。不过,最终这一切都取决于你。您应该确保您以某种方式关注 Rails 版本的提要,以便您始终了解安全版本。

于 2012-02-07T19:09:27.537 回答