当我在Gemfile中使用“gem rails”时,默认的Rails版本是什么?

时间:2011-12-02 07:48:58

标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-3.1

在Gemfile中,我写了gem 'rails'

gem list返回rails (3.1.3, 3.1.1, 3.0.9)

所以如果我打电话给rails s,它会使用哪个版本的Rails?

4 个答案:

答案 0 :(得分:4)

您可以通过执行以下内容找到它:

rails -v

答案 1 :(得分:1)

您可以在Gemfile中通过以下行定义它:

gem 'rails', '3.1.1'

如果缺少版本信息,则在运行命令bundle install时,它将是最新版本。信息存储在文件Gemfile.lock

答案 2 :(得分:1)

默认情况下,它将使用gem list命令的第一个版本,这是具有最高编号的版本。

答案 3 :(得分:1)

如果您有Gemfile项目,则需要使用bundle exec command运行命令。然后,该命令的版本将与Gemfile.lock的版本相同。

否则,如果你有

  • rails 3.0 project1
  • rails 3.1 project2

...然后你应该尝试在project1中使用带有rails的rails 3.0。它将是gem list rails (3.1.3, 3.1.1, 3.0.9) => 3.1.3的最新版本。

如果您使用bundle exec rails,它将为3.0(来自Gemfile.lock的版本)。