Ma version actuelle de ruby est, ruby 1.9.2p0 (2010-08-18 revision 29036) [x86_64-darwin10.5.0]
mais je souhaite la mettre à jour avec le dernier niveau de correctif en utilisant rvm. Comment puis-je faire ceci?
116
Ma version actuelle de ruby est, ruby 1.9.2p0 (2010-08-18 revision 29036) [x86_64-darwin10.5.0]
mais je souhaite la mettre à jour avec le dernier niveau de correctif en utilisant rvm. Comment puis-je faire ceci?
Tout d'abord, mettez à jour votre installation RVM en exécutant rvm get stable
.
Pour vous assurer que vous exécutez la nouvelle version RVM, vous devrez alors exécuter rvm reload
(ou simplement ouvrir un nouveau terminal).
Une fois cela fait, vous pouvez demander à RVM de répertorier les versions de ruby disponibles à installer 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 indiquent qu'il s'agit actuellement du niveau de patch par défaut de RVM pour ruby 1.9.2.
Enfin, pour installer la nouvelle version de ruby, lancez simplement rvm install 1.9.2
- et attendez qu'elle se compile!
rvm get latest
/rvm get head
sont les moyens corrects de mettre à jour rvm maintenant.Mettez à niveau l'interpréteur ruby et conservez les ensembles de gemmes existants:
À remplacer par la dernière version stable de 1.9.2. Cela évite l'encombrement.
Quelques conseils utiles supplémentaires, grâce aux commentaires (@Mauro, @James, @ACB)
la source
rvm list known
pour voir les versions de ruby disponibles que vous pouvez mettre à niveau.Première mise à jour RVM:
Ensuite, mettez à jour votre version Ruby:
Choisissez oui pour toutes les questions:
Si vous souhaitez mettre à jour vos gemmes avec les dernières versions, vous pouvez faire:
EDIT: Je viens de faire cela aujourd'hui pour la dernière version de ruby 2.0.0 (j'ai mis à jour de ruby-2.0.0-p195 à ruby-2.0.0-p353). Après cela, j'ai eu une erreur de segmentation lorsque j'ai essayé de mettre à jour les gemmes. Cela se produit parce que les gems ont été installés pour ruby-2.0.0-p195 et certains d'entre eux sont incompatibles avec p353.
Vous pouvez maintenant essayer de trouver les gemmes incompatibles, mais la solution la plus simple était de supprimer toutes les gemmes installées et de les réinstaller. J'ai simplement supprimé le
gems/ruby-2.0.0-p353
répertoire qui se trouvait dans/usr/local/rvm
. Cela pourrait être ailleurs pour vous.Ensuite, j'ai couru
gem install bundler
et pour chacune de mes applications de rails j'ai faitbundle install
.la source
comme ça:
la source
Vous pouvez installer n'importe quel niveau de patch en suivant la page de leur wiki .
De plus, chaque ruby est indépendant, donc vous ne «mettez pas à jour et gardez les gemmes», mais installez une nouvelle version de correctif puis installez les gemmes dans ce nouvel environnement ruby.
C'est peut-être là où les gemmes entrent en jeu, mais je ne les utilise pas.
N'oubliez pas de mettre à jour votre rvm aussi, juste au cas où ça fait un moment.
la source
La réponse de npad expose définitivement les bases, je ne répéterai donc pas ces étapes, mais plusieurs réponses suggèrent ici d'utiliser
rvm upgrade
. Je sais que rvm vous donne l'option, mais c'est un peu dangereux.OMI, la manière la plus sûre et la plus «rvm» est de commencer par
rvm install
la nouvelle version de ruby, puis d'utiliser larvm gemset copy
commande pour copier votre ou vos ensembles de gemmes dans la nouvelle version de ruby, par exemplervm gemset copy 1.9.2-p0@some-gemset 1.9.2-p290@some-gemset
. Ensuite, vous pouvez facilement basculer votre projet vers l'utilisation du jeu de gemmes nouvellement copié (je recommande d'utiliser un.rvmrc
fichier dans le répertoire de votre projet) et voir si votre code échoue. Si c'est le cas, revenir à l'ancienne version ruby est juste une question de changement de jeu de gemmes.Mais même si vous n'utilisez pas de gemsets (bien que je suppose que vous le faites puisque vous avez marqué des rails sur cette question), l'utilisation de
rvm upgrade
peut entraîner des échecs inattendus. Et si votre code se casse, vous devez maintenant réinstaller l'ancienne version. Prenez juste un peu plus de temps et faites-le de manière propre.la source
Je suppose que c'est
rvm install 1.9.2-head
Vous pouvez voir les rubis disponibles avec
rvm list known
la source
head
obtenir le dernier niveau de patch? Je pensais que c'était pour la toute dernière version, ce qui signifie que ça pourrait être quelque chose d'instable et d'expérimental.Ce billet de blog devrait être utile: http://pogodan.com/blog/2011/09/06/ruby-1-9-3-for-development
essentiel:
la source