Use el archivo rvmrc o ruby-version para establecer un gemset de proyecto con RVM?

Uso RVM, el administrador de versiones de Ruby para especificar una versión de Ruby y un conjunto de gems para cada uno de mis proyectos de Rails.

Tengo un archivo .rvmrc para seleccionar automáticamente una versión de Ruby y gemset cada vez que copio en un directorio de proyecto.

Después de instalar RVM 1.19.0, recibo un mensaje

Está utilizando .rvmrc , requiere confiar, es más lento y no es compatible con otros administradores de ruby, puede cambiar a .ruby-version usando rvm rvmrc to [.]ruby-version o ignorar estas advertencias con rvm rvmrc warning ignore /Users/userName/code/railsapps/rails-prelaunch-signup/.rvmrc , .rvmrc continuará siendo el archivo de proyecto predeterminado en RVM 1 y RVM 2, para ignorar la advertencia de todos los archivos ejecutados rvm rvmrc warning ignore all.rvmrcs .

¿Debo seguir usando mi archivo .rvmrc o debo cambiar a un archivo .ruby-version ? ¿Cuál es óptimo? ¿Cuáles son las ramificaciones?

Si su archivo .rvmrc contiene código de shell personalizado, continúe usando .rvmrc ya que le permite incluir cualquier código de shell.

Si su único objective es cambiar las versiones de Ruby, utilice .ruby-version que sea compatible con otros mezcladores de versiones de Ruby, como rbenv o chruby . Este archivo tampoco requiere confianza, ya que es solo el nombre de una versión de Ruby y no se ejecutará de ninguna manera.

Si usa .ruby-version , puede incluir @gemset en el archivo, pero esto no será compatible con otros conmutadores. Para mantener la compatibilidad, utilice el nombre gemset en un archivo separado .ruby-gemset que otras herramientas lo ignoran (funciona solo junto con .ruby-version ) .

Por ejemplo, si tiene un .rvmrc simple:

 rvm use 1.9.3@my-app 

Se puede transformar a .ruby-version :

 1.9.3 

Y .ruby-gemset :

 my-app 

Asegúrese de eliminar el archivo .rvmrc ya que tiene prioridad sobre cualquier otro archivo de configuración del proyecto:

 rm .rvmrc 

Forma rápida y fácil de cambiar de .rvmrc a .ruby-versión + .ruby-gemset

 rvm rvmrc to .ruby-version 

Si quiere crear la .ruby-version .ruby-gemset archivo .ruby-gemset manera breve, puede usar los comandos de esta manera:

 rvm use 2.1.1@nancy --create rvm --create --ruby-version 2.1.1@nancy 

Puedes probar ambos. Vaya a la raíz de su proyecto, cree un archivo .rvmrc ( touch .rvmrc ), luego edite rvm use 2.0.0-p451@your_gemset (su versión de ruby ​​y su nombre gemset). Después de guardar este archivo, puede escribir este comando:

cd ../your_project (está en el directorio your_project ) y se ejecutará la secuencia de comandos en .rvmrc.

El RVM recomienda usar ruby-version. Puede ejecutar este comando para cambiar de .rvmrc a .ruby-version

rvm rvmrc to .ruby-version

Lo que hace es crear 2 archivos con el nombre .ruby-version y .ruby-gemset y agregar esta línea

ruby-2.0.0-p451 en .ruby-versión

your_gemset en .ruby-gemset

Puedes intentar hacerlo manualmente si quieres 🙂

Instale rvm usando:

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

Instale diferentes versiones de ruby:

 rvm install 1.8.7 rvm install 1.9.2 

Cambiar a la versión de ruby ​​específica. Por ejemplo, 1.8.7:

 rvm use 1.8.7 

Para crear una gem:

 rvm gemset create project_gemset 

Y para usar un gemset:

 rvm gemset use project_gemset