Если у меня есть оба Rails 2.3.8 и 3.0.0 (как гемы), могу ли я легко переключаться между ними? - PullRequest
1 голос
/ 10 октября 2010

В Ubuntu, если Rails 3.0 был установлен с использованием

sudo gem install rails

, а затем Rails 2.3.8 был установлен позже:

sudo gem install -v 2.3.8 rails

Теперь в системе есть Rails 2.3.8 и3.0.0.Но если в bash введено следующее:

rails -v

, тогда появится 3.0.0.Есть ли способ перейти на использование 2.3.8 вместо этого?

Ответы [ 4 ]

3 голосов
/ 10 октября 2010

Я рекомендую взглянуть на инструмент RVM и особенно его наборы гембсетов .

2 голосов
/ 11 октября 2010

Как было сказано выше для приложений rails 2.3 в environment.rb do

RAILS_GEM_VERSION = '2.3.8' unless defined? RAILS_GEM_VERSION

Для рельсов 3 вы используете упаковщик Gemfile

gem 'rails', '3.0.0'

Этого было бы достаточно , но

Общие советы, установите rvm.

bash < <( curl http://rvm.beginrescueend.com/releases/rvm-install-head )

Добавьте это к своему ~ / .profile.

$ [[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"

Теперь перезагрузите профиль, чтобы терминал знал о rvm.

$ source .profile

Запустите эти.

$ rvm install 1.9.2      (this installs ruby 1.9.2-p0, the latest)
$ rvm 1.9.2 --default    (this sets the default implementation of ruby)
$ gem install rails
$ gem install rails -v=2.3.8 

Тогда было бы хорошо пойти, поверьте мне, если вы не используете rvm, вы не знаете, чего вам не хватает. Тогда, как уже упоминалось, есть также наборы гемов, посмотрите здесь http://rvm.beginrescueend.com/gemsets/

1 голос
/ 10 октября 2010

Поместите это в ваш environment.rb файл

RAILS_GEM_VERSION = '2.3.8' unless defined? RAILS_GEM_VERSION

Если вы говорите о запуске исполняемого файла rails из оболочки, просто укажите правильный путь. После запуска исполняемого файла 2.3.8 я не думаю, что он каким-то образом сможет найти и перенести управление в исполняемый файл 3.0.0.

0 голосов
/ 11 октября 2010

Я также нашел путь в книге Agile:

rails _2.3.8_ -v

, и он скажет, что это версия 2.3.8, хотя я не знаю, насколько хорошо этот подход работает (насколько хорошо он изолирует2 версии Rails) по сравнению с использованием RVM.

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