Используйте файл rvmrc или ruby-version для установки gemset проекта с RVM?

Я использую RVM, Ruby Version Manager, чтобы указать версию Ruby и набор драгоценных камней для каждого из моих проектов Rails.

У меня есть файл .rvmrc для автоматического выбора версии Ruby и gemset всякий раз, когда я cd в каталог проекта.

После установки RVM 1.19.0 я получаю сообщение

Вы используете .rvmrc, он требует доверия, он медленнее, и он не совместимы с другими рубиновыми менеджерами, вы можете переключиться на .ruby-version с помощью rvm rvmrc to [.]ruby-version или игнорировать это предупреждения с rvm rvmrc warning ignore /Users/userName/code/railsapps/rails-prelaunch-signup/.rvmrc, .rvmrc будет оставаться файлом проекта по умолчанию в RVM 1 и RVM 2, чтобы игнорировать предупреждение для всех файлов, запускаемых rvm rvmrc warning ignore all.rvmrcs.

Должен ли я продолжать использовать мой файл .rvmrc или мне нужно переключиться на файл .ruby-version? Что оптимально? Каковы последствия?

Ответ 1

Если ваш файл .rvmrc содержит собственный код оболочки, продолжайте использовать .rvmrc, поскольку он позволяет включать любой код оболочки.

Если ваша единственная цель - переключить версии Ruby, используйте .ruby-version, который поддерживается другими коммутаторами версии Ruby, такими как rbenv или chruby. Этот файл также не требует доверия, поскольку это просто имя Ruby-версии и не будет выполнен каким-либо образом.

Если вы используете .ruby-version, вы можете включить @gemset в файл, но это не будет совместимо с другими переключателями. Для обеспечения совместимости используйте имя gemset в отдельном файле .ruby-gemset, который игнорируется другими инструментами (он работает только вместе с .ruby-version).

Например, если у вас есть простой .rvmrc:

rvm use [email protected]

Его можно преобразовать в .ruby-version:

1.9.3

И .ruby-gemset:

my-app

Обязательно удалите файл .rvmrc, поскольку он имеет приоритет перед любыми другими файлами конфигурации проекта:

rm .rvmrc

Ответ 2

Быстрый и простой способ переключения с .rvmrc на .ruby-version +.ruby-gemset

rvm rvmrc to .ruby-version

Ответ 3

Вы можете попробовать оба. Перейдите в корень вашего проекта, создайте файл .rvmrc (touch .rvmrc), затем отредактируйте rvm use [email protected]_gemset (ваша рубиновая версия и имя gemset). После сохранения этого файла вы можете ввести следующую команду:

cd ../your_project (вы находитесь в директории your_project), и будет выполняться script в .rvmrc.

RVM рекомендует использовать рубиновую версию. Вы можете запустить эту команду для переключения с .rvmrc на .ruby-version

rvm rvmrc to .ruby-version

Что он делает, это создать 2 файла с именем .ruby-version и .ruby-gemset и добавить эту строку

ruby-2.0.0-p451 в .ruby-version

your_gemset в .ruby-gemset

Вы можете попробовать сделать это вручную, если хотите:)

Ответ 4

Если вы хотите создать файл .ruby-version и .ruby-gemset в кратчайшие сроки, вы можете использовать следующие команды:

rvm use [email protected] --create

rvm --create --ruby-version [email protected]

Ответ 5

Установите rvm, используя:

\curl -sSL https://get.rvm.io | bash -s stable --rails

Установите разные версии ruby:

rvm install 1.8.7
rvm install 1.9.2

Переключитесь на определенную рубиновую версию. Например, 1.8.7:

rvm use 1.8.7

Чтобы создать gemse:

rvm gemset create project_gemset

И использовать gemset:

rvm gemset use project_gemset