Почему rails устанавливает более новую версию при запуске bundle? - PullRequest
2 голосов
/ 16 января 2012

Я пытаюсь начать новый проект рельсов, и я хотел бы придерживаться рельсов 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 Ответ

4 голосов
/ 16 января 2012

Это относительно малоизвестный факт, что вы можете указать версию рельсов для нового приложения _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 (теперь стандарт де-факто), и вы можете использовать его для установки ваших рельсов по умолчанию (а также ruby).

Удаление старой версии можно сделать с помощью sudo gem uninstall rails -v 3.2.0.rc2

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...