Si, comme moi, vous avez déjà installé une version ultérieure de votre gem, vous devez désinstaller la version ultérieure avec par exemple gem uninstall fog. Il vous demandera quelle version désinstaller si vous en avez plusieurs.
Dizzley
3
j'ai 3 versions de rake: gem list | grep rake= rake (10.1.1, 10.1.0, 0.8.7).. j'ai un projet rails 2.3.5 et un autre c'est 3.0 sur lequel je travaille en même temps .. comment utiliser une version spécifique de rake pour chaque projet (ie sur commande ligne?)
abbood
@abbood rake _10.1.1_ ...devrait fonctionner, pour qui veut savoir :)
Koen.
Il convient de noter que cela ne semble pas affecter les binaires exécutables. La désinstallation de la version précédente a cependant fonctionné pour les binaires.
Ciro Santilli 郝海东 冠状 病 六四 事件 法轮功
Encore une fois, souhaitant pouvoir faire plusieurs votes positifs. Peut-être s'ils devaient être séparés d'au moins un an. :)
Don Branson
192
Utilisez le --versionparamètre (raccourci -v):
$ gem install rails -v 0.14.1
Vous pouvez également utiliser des comparateurs de version comme >=ou~>
Cela a fonctionné pour ~>, mais qu'en est-il si vous avez une situation de type «<0,9,> = 0,7»? J'ai essayé d'appliquer deux arguments v et il semble que le premier ait été ignoré. Utiliser le séparateur de virgules ne serait même pas analysé. J'ai fini par supprimer l'exigence supérieure à et il est arrivé d'installer une version acceptable, mais avoir une solution formelle serait bien.
Très bonne réponse. Je vous suggère cependant d'ajouter un autre bloc de code pour l'option "-v". Lorsque mes yeux ont lu la réponse, ils se sont immédiatement dirigés vers les blocs de code et non vers le texte qui l'entourait. Si d'autres font de même, ils manqueront la partie "-v".
CamHart
8
Linux
Pour installer une version différente de ruby, vérifiez la dernière version du package en utilisant aptcomme ci-dessous:
Pour vérifier quelle est la version actuelle, exécutez:
$ gem --version # Check for the current user.
$ sudo gem --version # Check globally.
Si la version est toujours ancienne, vous pouvez essayer de basculer la version vers la nouvelle en utilisant ruby version manager ( rvm) en:
rvm 1.9.3
Remarque: vous pouvez le préfixer sudosi a rvmété installé globalement. Ou exécutez /usr/local/rvm/scripts/rvmsi votre commande rvmn'est pas dans votre global PATH. Si le processus d'installation de rvm a échoué, consultez la section de dépannage.
Dépannage:
Si vous avez toujours l'ancienne version, vous pouvez essayer d'installer rvm (gestionnaire de version ruby) via:
sudo apt-get install curl # Install curl first
curl -sSL https://get.rvm.io | bash -s stable --ruby # Install only for the user.#or:# curl -sSL https://get.rvm.io | sudo bash -s stable --ruby # Install globally.
puis s'il est installé localement (uniquement pour l'utilisateur actuel), chargez rvm via:
source /usr/local/rvm/scripts/rvm; rvm 1.9.3
si globalement (pour tous les utilisateurs), alors:
Remarque: Il est préférable de ne PAS utiliser sudo pour travailler avec les gemmes RVM. Lorsque vous faites sudo, vous exécutez des commandes en tant que root, un autre utilisateur dans un autre shell et donc toute la configuration que RVM a faite pour vous est ignoré pendant que la commande s'exécute sous sudo (comme GEM_HOME, etc ...). Donc, pour réitérer, dès que vous `` sudo '' vous exécutez en tant qu'utilisateur du système racine, ce qui effacera votre environnement ainsi que tous les fichiers qu'il crée ne pourront pas être modifiés par votre utilisateur et entraîneront des choses étranges.
gem uninstall fog
. Il vous demandera quelle version désinstaller si vous en avez plusieurs.gem list | grep rake
=rake (10.1.1, 10.1.0, 0.8.7)
.. j'ai un projet rails 2.3.5 et un autre c'est 3.0 sur lequel je travaille en même temps .. comment utiliser une version spécifique de rake pour chaque projet (ie sur commande ligne?)rake _10.1.1_ ...
devrait fonctionner, pour qui veut savoir :)Utilisez le
--version
paramètre (raccourci-v
):Vous pouvez également utiliser des comparateurs de version comme
>=
ou~>
Ou avec des versions plus récentes de gem même:
la source
~>
?Pour l'installation
gem install gemname -v versionnumber
Pour désinstaller
gem uninstall gemname -v versionnumber
la source
pour Ruby 1.9+, utilisez deux points.
la source
gem sources
, si elle est vide, ajoutez un repo en utilisant cette commande:gem sources -a https://rubygems.org/
gem -v
émissions1.8.23
contre les vôtres2.2.2
. On dirait que cette fonctionnalité est nouvelle :)Comme d'autres l'ont noté, utilisez généralement le
-v
drapeau de lagem install
commande.Si vous développez une gemme localement, après avoir coupé une gemme de votre spécification de gemmes:
En supposant que la version 0.8, cela ressemblerait à ceci:
la source
Linux
Pour installer une version différente de ruby, vérifiez la dernière version du package en utilisant
apt
comme ci-dessous:Installez-le ensuite:
Pour vérifier quelle est la version actuelle, exécutez:
Si la version est toujours ancienne, vous pouvez essayer de basculer la version vers la nouvelle en utilisant ruby version manager (
rvm
) en:Remarque: vous pouvez le préfixer
sudo
si arvm
été installé globalement. Ou exécutez/usr/local/rvm/scripts/rvm
si votre commandervm
n'est pas dans votre globalPATH
. Si le processus d'installation de rvm a échoué, consultez la section de dépannage.Dépannage:
Si vous avez toujours l'ancienne version, vous pouvez essayer d'installer rvm (gestionnaire de version ruby) via:
puis s'il est installé localement (uniquement pour l'utilisateur actuel), chargez rvm via:
si globalement (pour tous les utilisateurs), alors:
si vous rencontrez toujours des problèmes avec la nouvelle version ruby, essayez de l'installer par rvm via:
si vous souhaitez installer des gemmes dans le monde et que rvm est déjà installé, vous pouvez essayer:
au lieu de:
la source