114 votes

Comment mettre à niveau mon ruby ​​1.9.2-p0 vers le dernier niveau de correctif à l'aide de rvm?

Ma version actuelle de ruby ​​est ruby 1.9.2p0 (2010-08-18 revision 29036) [x86_64-darwin10.5.0] mais je souhaite le mettre à jour au dernier niveau de correctif à l’aide de rvm. Comment puis-je faire ceci?

161voto

npad Points 3208

Tout d'abord, mettre à jour votre installation de RVM en exécutant rvm get stable.

Afin de vous assurer de l'exécution de la nouvelle RVM version, vous aurez alors besoin d'exécuter rvm reload (ou il suffit d'ouvrir un nouveau terminal).

Une fois cela fait, vous pouvez demander à RVM à la liste de ruby versions disponibles pour l'installation en exécutant rvm list known.

Dans la sortie, vous devriez maintenant voir:

# MRI Rubies
...
[ruby-]1.9.2[-p320]
...

Les crochets autour du niveau de patch indiquer que ce n'est actuellement RVM par défaut du niveau de patch pour ruby 1.9.2.

Enfin, pour installer la nouvelle version de ruby, il suffit d'exécuter rvm install 1.9.2 - et attendre pour compiler!

97voto

oma Points 5398

Améliorez l'interprète ruby et conservez les gemsets existants:

 $ 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
 

À remplacer par la dernière version stable de 1.9.2. Cela évite l'encombrement.

Quelques astuces utiles supplémentaires, grâce aux commentaires (@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
 

34voto

Viktor Fonic Points 1269

Première mise à jour RVM:

rvm get stable

Puis mettre à jour votre version de Ruby:

rvm upgrade 2.0.0

Choisissez oui pour toutes les questions:

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 vous souhaitez mettre à jour vos gemmes pour les dernières versions, vous pouvez le faire:

rvm all do gem update

EDIT: je viens de faire cela aujourd'hui pour la dernière version de ruby 2.0.0 (j'ai mis à jour à partir de ruby 2.0.0-p195 à ruby 2.0.0-p353). Après, je recevais une erreur de segmentation quand j'ai essayé de mettre à jour des joyaux. Cela se produit parce que les pierres précieuses ont été installés pour ruby 2.0.0-p195 et certains d'entre eux sont incompatibles avec p353.

Maintenant vous pouvez aller et essayer de trouver les gemmes qui sont incompatibles, mais la solution la plus simple était de supprimer tous installés pierres précieuses et de les installer de nouveau. J'ai tout simplement supprimé gems/ruby-2.0.0-p353 annuaire qui était situé en /usr/local/rvm. Il pourrait être quelque part d'autre pour vous.

Ensuite, j'ai couru gem install bundler et pour chacun de mes rails applications que je n' bundle install.

16voto

Amer Points 569

comme ça:

 rvm update; rvm reload
rvm install ruby-1.9.2-p136 
rvm --default ruby-1.9.2-p136
 

2voto

pjammer Points 5042

Vous pouvez installer n’importe quel niveau de patch en suivant la page de leur wiki .

En outre, chaque ruby ​​étant indépendant, vous ne devez donc pas réellement "mettre à jour et conserver les gems", mais installer une nouvelle version de correctif, puis les installer dans ce nouvel environnement.

C’est peut-être lorsque des pierres précieuses entrent en jeu, mais je ne les utilise pas.

N'oubliez pas de mettre à jour votre MVM aussi, juste au cas où ça fait un moment.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X