Используйте файл 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