¿Cómo instalar y usar diferentes versiones de ruby?

15

Estoy aprendiendo rieles de diferentes libros que usan diferentes versiones de ruby ​​y rails. En este momento tengo instalado ruby ​​1.87 en mi Mac OS X Snow Leopard (in /usr/bin), pero también necesito usar ruby ​​1.9 para una aplicación de rieles diferente.

¿Alguien puede decirme cómo hacer que esto funcione? Soy nuevo en esto, por lo que agradecería muchísimas instrucciones.

Miguel
fuente

Respuestas:

20

Existen dos "gestores de versiones de Ruby" entre los que puede elegir:

Estos le permiten mantener múltiples versiones de Ruby en el mismo sistema. Una vez que haya instalado un administrador de versiones e instalado su propia versión de Ruby, no se meterá con Ruby y sus gemas de su sistema, que es el mayor beneficio. No mas sudo! No más errores de permisos y conflictos de gemas.

¿Cuál debería elegir?

Ambos hacen lo mismo, pero siguen filosofías diferentes. La elección depende de ti.

Lo recomendaría personalmente rbenvpor su simplicidad. Lo he estado usando desde hace años y siempre ha funcionado bien. Anteriormente, hubiera recomendado RVM (y una versión anterior de esta respuesta realmente lo mencionó), pero siento que es más difícil entrar.

¿Cómo los instalo?

Si eliges rbenv:

  • Siga las instrucciones de instalación.
  • Instalar en pc ruby-build
  • Ejecute rbenv install x.x.xdónde x.x.xestá la versión (use rbenv install --listpara ver cuáles están disponibles
  • Corre rbenv global x.x.xpara cambiar tu versión global de Ruby

Si elige RVM:

  • Use el método de instalación segura
  • Lea las instrucciones de instalación : probablemente desee la configuración de usuario único
  • Use rvm list knownpara enumerar los Rubíes disponibles y luego ejecute rvm install x.x.xpara instalar una versión específica.
  • Use rvm use x.x.x --defaultpara cambiar su Ruby predeterminado
slhck
fuente
1
Ver también rbenv .
user1686
@grawity ¿Por qué no publicar otra respuesta? Es bueno tener alternativas, realmente no lo he investigado rbenvtodavía.
slhck
muchas gracias, ¿también ayuda a cambiar entre versiones de Rails? diferentes libros que estoy usando emplean 3.05 (creo) y 3.1 y está causando problemas ...
Michael
Probé la línea de instalación que escribió (y que también está en el sitio rvm) y recibí un mensaje de error: bash: line 152: git: comando no encontrado bash: línea 154: git: comando no encontrado
Michael
Ah, necesitas git, por supuesto. Lo siento, lo olvidé. Puede instalar Git con el instalador de OS X (solo seleccione la última versión en la parte superior).
slhck
7

Creo que rbenv merece al menos su propia respuesta.

Hay una batalla constante entre los fanáticos de rbenv y los de RVM, pero personalmente me gusta mucho más rbenv. Como dice Sam Stephenson (el autor), rbenv solo se refería a cambiar las versiones de Ruby (a diferencia de RVM, que hace mucho más).

En OS X, es especialmente fácil intentarlo. Simplemente siga las excelentes instrucciones de instalación en la página de Github (si tiene instalado Homebrew, básicamente es solo un brew install rbenv ruby-build).

En cuanto a cambiar las versiones de Rails, una vez escribí un artículo sobre lo que podría ser de su interés.

Michael Trojanek
fuente
1
Aquí hay una breve descripción del autor de rbenv sobre las principales diferencias con RVM y las razones para elegir rbenv. La simplicidad de rbenv fue la razón principal por la que migré lejos de RVM. Administrar conjuntos de gemas específicas de aplicaciones es IMO mejor hecho con Bundler: no necesita un administrador de versiones de Ruby para eso.
Jochem Schulenklopper
Exactamente: administrar conjuntos de gemas específicas de la aplicación es el trabajo de Bundler . Nunca he sido fanático de los gemas vinculados a los administradores de versiones.
Michael Trojanek