Respuestas:
En primer lugar, actualice su instalación RVM ejecutando rvm get stable
.
Para asegurarse de que está ejecutando la nueva versión de RVM, deberá ejecutar rvm reload
(o simplemente abrir una nueva terminal).
Una vez hecho esto, puede pedirle a RVM que enumere las versiones de ruby disponibles para instalar ejecutando rvm list known
.
En la salida ahora debería ver:
# MRI Rubies
...
[ruby-]1.9.2[-p320]
...
Los corchetes alrededor del nivel de parche indican que este es actualmente el nivel de parche predeterminado de RVM para ruby 1.9.2.
Por último, para instalar la nueva versión de ruby, simplemente ejecute rvm install 1.9.2
y espere a que se compile.
Actualice el intérprete de ruby y mantenga los conjuntos de gemas existentes:
$ rvm upgrade 1.9.2-p0 1.9.2
Are you sure you wish to upgrade from ruby-1.9.2-p0 to ruby-1.9.2-p136? (Y/n): Y
Para reemplazar con la última versión estable de 1.9.2. Esto evita el desorden.
Algunos consejos útiles adicionales, gracias a los comentarios (@Mauro, @James, @ACB)
$ rvm list known
# NOTE: you probably want to upgrade your rvm first, as the list of known rubies seems to be coupled to the rvm version.
$ rvm get stable
$ rvm list known #pick your ruby
rvm list known
para ver las versiones de ruby disponibles a las que puede actualizar.
Primera actualización RVM:
rvm get stable
Luego actualice su versión de Ruby:
rvm upgrade 2.0.0
Elija sí para todas las preguntas:
Are you sure you wish to upgrade from ruby-2.0.0-p195 to ruby-2.0.0-p247? (Y/n): Y
Are you sure you wish to MOVE gems from ruby-2.0.0-p195 to ruby-2.0.0-p247?
This will overwrite existing gems in ruby-2.0.0-p247 and remove them from ruby-2.0.0-p195 (Y/n): Y
Do you wish to move over aliases? (Y/n): Y
Do you wish to move over wrappers? (Y/n): Y
Do you also wish to completely remove ruby-2.0.0-p195 (inc. archive)? (Y/n): Y
Si desea actualizar sus gemas a las últimas versiones, puede hacer lo siguiente:
rvm all do gem update
EDITAR: Acabo de hacer esto hoy para la última versión de ruby 2.0.0 (actualicé de ruby-2.0.0-p195 a ruby-2.0.0-p353). Después de eso, estaba obteniendo un error de segmentación cuando intenté actualizar gemas. Esto sucede porque las gemas se instalaron para ruby-2.0.0-p195 y algunas de ellas son incompatibles con p353.
Ahora puede ir e intentar encontrar las gemas que son incompatibles, pero la solución más fácil fue eliminar todas las gemas instaladas e instalarlas nuevamente. Simplemente eliminé el gems/ruby-2.0.0-p353
directorio que estaba ubicado en /usr/local/rvm
. Podría estar en otro lugar para ti.
Luego corrí gem install bundler
y para cada una de mis aplicaciones de rieles lo hice bundle install
.
Me gusta esto:
rvm update; rvm reload
rvm install ruby-1.9.2-p136
rvm --default ruby-1.9.2-p136
Puede instalar cualquier nivel de parche siguiendo la página de su wiki .
Además, cada rubí es independiente, por lo que no está realmente 'actualizando y conservando las gemas', sino instalando una nueva versión de parche y luego instalando las gemas en ese nuevo entorno de rubí.
Esto puede ser donde entran en juego los conjuntos de gemas, sin embargo, no los uso.
No olvide actualizar también su rvm, por si ha pasado un tiempo.
La respuesta de npad definitivamente establece los conceptos básicos, por lo que no reiteraré esos pasos, pero hay varias respuestas aquí que sugieren usar rvm upgrade
. Sé que rvm te da la opción, pero es un poco peligrosa.
En mi opinión, la forma más segura y más "rvm" es primero rvm install
la nueva versión de ruby, luego use el rvm gemset copy
comando para copiar su (s) conjunto (s) de gemas a la nueva versión de ruby, por ejemplo rvm gemset copy 1.9.2-p0@some-gemset 1.9.2-p290@some-gemset
. Luego, puede cambiar fácilmente su proyecto para usar el conjunto de gemas recién copiado (recomiendo usar un .rvmrc
archivo en el directorio de su proyecto) y ver si su código falla. Si lo hace, volver a la versión anterior de rubí es solo cuestión de cambiar el conjunto de gemas.
Pero incluso si no usa conjuntos de gemas (aunque supongo que sí, ya que etiquetó rieles en esta pregunta), el uso de rvm upgrade
puede provocar fallas inesperadas. Y si su código se rompe, ahora debe reinstalar la versión anterior nuevamente. Solo tómate un poco más de tiempo y hazlo de manera limpia.
Supongo que es rvm install 1.9.2-head
Puedes ver los rubíes disponibles con rvm list known
head
conseguir el último nivel de parches? Pensé que era para la última versión, lo que significa que podría ser algo inestable y experimental.
Esta publicación de blog debería ser útil: http://pogodan.com/blog/2011/09/06/ruby-1-9-3-for-development
esenciales:
rvm get head
rvm reload
wget https://gist.github.com/raw/1008945/4edd1e1dcc1f0db52d4816843a9d1e6b60661122/ruby-1.9.2p290.patch
rvm install ruby-1.9.2-p290 --patch ruby-1.9.2p290.patch -n patched
rvm get latest
/rvm get head
son las formas correctas de actualizar rvm ahora.