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?
Réponses
Trop de publicités?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!
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
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
.
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.