当我运行bundle时,为什么rails会安装更新的版本?

时间:2012-01-16 06:00:49

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

我正在尝试启动一个新的rails项目,我想坚持使用rails 3.1.3。但是,当我运行命令rails new projectname时,我得到以下输出:

  create  
  create  README.rdoc
  create  Rakefile
  create  config.ru
  create  .gitignore
  create  Gemfile
  create  app
  ...
  create  config
  ...
  create  config/database.yml
  create  db
  ...
  create  public/robots.txt
  create  script
  create  script/rails
  create  test/fixtures
  create  test/fixtures/.gitkeep
  ...
  create  tmp/cache
  create  tmp/cache/assets
  create  vendor/assets/javascripts
  ...
  create  vendor/plugins/.gitkeep
     run  bundle install
Fetching source index for https://rubygems.org/
Using rake (0.9.2.2) 
Using i18n (0.6.0) 
Using multi_json (1.0.4) 
Using activesupport (3.2.0.rc2) 
Using builder (3.0.0) 
Using activemodel (3.2.0.rc2) 
Using erubis (2.7.0) 
Using journey (1.0.0) 
Using rack (1.4.0) 
Using rack-cache (1.1) 
Using rack-test (0.6.1) 
Using hike (1.2.1) 
Using tilt (1.3.3) 
Using sprockets (2.1.2) 
Using actionpack (3.2.0.rc2) 
Using mime-types (1.17.2) 
Using polyglot (0.3.3) 
Using treetop (1.4.10) 
Using mail (2.3.0) 
Using actionmailer (3.2.0.rc2) 
Using arel (3.0.0) 
Using tzinfo (0.3.31) 
Using activerecord (3.2.0.rc2) 
Using activeresource (3.2.0.rc2) 
Using bundler (1.0.21) 
Using coffee-script-source (1.2.0) 
Using execjs (1.2.13) 
Using coffee-script (2.2.0) 
Using rack-ssl (1.3.2) 
Using json (1.6.5) 
Using rdoc (3.12) 
Using thor (0.14.6) 
Using railties (3.2.0.rc2) 
Using coffee-rails (3.2.1) 
Using jquery-rails (2.0.0) 
Installing rails (3.2.0.rc2)           # WTF?
Using sass (3.1.12) 
Using sass-rails (3.2.3) 
Using sqlite3 (1.3.5) 
Using uglifier (1.2.2) 
Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.

我希望所有内容都保留3.1版本。为什么rails命令会自动将自身更新为3.2.0.rc2?我怎样才能确保我所做的一切都是使用3.1.3版本的所有内容?

感谢。

1 个答案:

答案 0 :(得分:4)

相对鲜为人知的事实是,您可以为新应用程序指定rails版本_like.this _

rails _3.1.3_ projectname

将在假设3.1.3安装后工作(gem install rails -v3.1.3否则)

这也适用于rails 2应用程序,即预捆绑器,并且在这些情况下将创建一个看起来像rails2的应用程序,例如, rails _2.3.8_ projectname如有必要,再次gem install rails -v2.3.8(即在该计算机上首次使用)。

长期确保您使用的是rvm(现在是一个事实上的标准),您可以使用它来设置您的默认轨道(以及红宝石)。

可以使用sudo gem uninstall rails -v 3.2.0.rc2

删除旧版本