Как установить версию Ruby по умолчанию с RVM? - PullRequest
38 голосов
/ 08 октября 2011

Ubuntu 11.

Я делаю следующее:

$ rvm --default use 1.9.2 и получаю:

Using /home/md/.rvm/gems/ruby-1.9.2-p180 так что это хорошо.

но когда я сейчас открываю новое окно терминала, я все равно получаю:

$ ruby -v

ruby 1.8.7 (2010-08-16 patchlevel 302) [i686-linux]

Ответы [ 4 ]

43 голосов
/ 08 октября 2011

Если вы поместите исходную строку RVM в ваш bashrc (чтобы гарантировать, что неинтерактивные оболочки имеют доступ к RVM), вам потребуется исходный код .bashrc из вашего .bash_profile со следующими последними строками в вашем.bash_profile

if [ -f "$HOME/.bashrc" ]; then
  source $HOME/.bashrc
fi

Это предполагает, что у вас есть

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

в вашем $ HOME / .bashrc.Это хороший способ убедиться, что как интерактивные, так и неинтерактивные оболочки могут правильно находить и загружать RVM.Многопользовательские установки выполняют то же самое с помощью файла /etc/profile.d/rvm.sh.

После этого у вас не должно возникнуть проблем при определении Ruby по умолчанию для использования через

rvm 1.9.2 --default

или

rvm use 1.9.2@mygemset --default

Лучше определить набор гемов по умолчанию для использования, чтобы не загрязнять ваши гемсеты «по умолчанию» или «глобальные».

Если вы используете неинтерактивные оболочкиимейте в виду, что они обычно работают в режиме SH-совместимости, который затем требует, чтобы вы установили

BASH_ENV="$HOME/.bashrc"

в вашем $ HOME / .profile, чтобы загрузить RVM, или установить это непосредственно в вашем скрипте.Причина этого заключается в том, что когда bash работает в режиме SH, он не загружает напрямую .bash_profile или .bashrc, поскольку SH не использует эти файлы, и bash пытается имитировать процесс загрузки и выполнения оболочки SH.

10 голосов
/ 09 октября 2011

создайте "список rvm", чтобы увидеть, какие версии Ruby вы установили.

затем сделайте это, если вы хотите изменить версию только в одном терминальном сеансе:

rvm use 1.8.7

Если вы хотите выбрать версию по умолчанию для этой учетной записи пользователя, сделайте следующее:

rvm use --default 1.9.2

См:

rvm use --help

Смотрите также этот RailsCast:

http://railscasts.com/episodes/200-rails-3-beta-and-rvm

http://beginrescueend.com/

2 голосов
/ 19 апреля 2015

Поздно на вечеринку - все равно.

Вы правильно установили версию ruby ​​по умолчанию: rvm --default use 1.9.2

Однако вам необходимо обновить Gemfile до целевого ruby, поскольку RVM ссылается на этот файл для выбора рабочей версии ruby ​​при открытии терминала, поэтому он вернулся к предыдущей версии ruby.

0 голосов
/ 04 апреля 2016

Для изменения версии ruby ​​по умолчанию:

В Ubuntu

Перейдите на терминал по умолчанию в Ubuntu и следуйте инструкциям:

1) Edit -> Profile Preferences
2) Select "Title and Command"
3) check "Run command as a login shell"
4) restart terminal

И после этого выполните эту команду:

rvm - использовать по умолчанию 2.2.4@gemset_name

...