web-dev-qa-db-fra.com

Comment changer de version Ruby avec RVM?

Je ne peux pas changer la version actuelle de Ruby:

➜  ~  rvm list

rvm rubies

   Ruby-1.9.2-p290 [ x86_64 ]
   Ruby-1.9.3-p0 [ x86_64 ]

➜  ~  rvm use Ruby-1.9.3-p0

RVM is not a function, selecting rubies with 'rvm use ...' will not work.
110
donald

Fixe le. J'avais besoin d'ajouter:

[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"  # This loads RVM 

à .zshrc

121
donald

Cela m'est arrivé aussi. J'ai eu:

export PATH=~/.rvm/bin:$PATH

Ajouté dans mon .bashrc.

Tout ce que je devais faire était d'ajouter un autre

[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"

dans le même fichier et cela a fonctionné! Bien sûr, vous devez redémarrer votre terminal après cela.

56
The Mitra Boy

Votre Shell ne connaît pas la fonction RVM. Une fois que vous l'avez installé, il vous explique comment vous en occuper. Ou visitez la page installer sur le site RVM et consultez la section intitulée "2. Chargez RVM dans vos sessions Shell en tant que fonction".

Exécutez cette fois pour ajouter la ligne qui charge rvm dans votre ~/.bash_profile:

$ echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function' >> ~/.bash_profile

ou l'ajouter manuellement vous-même. (Notez que sur certains systèmes, vous voudrez le placer ailleurs, par exemple sur mon système, Mac OSX Lion, je le mets dans ~/.profile)

11
Joshua Cheek

(Kubuntu 11.10) Le ~/.bash_profile s'appelle maintenant ~/.profile

echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function' >> ~/.profile
source ~/.profile
rvm info # And now the fields display
9
Lindsay

Pour changer la version par défaut de Ruby:

Dans Ubuntu 11.10 
veuillez modifier les paramètres de votre terminal GNOME:

Allez dans Terminal puis suivez les instructions suivantes:

1.  Edit > Profile Preferences
2.  Open Title and Command Tab               
3.  Check Run Command as a login Shell 
4.  Restart terminal

Exécutez cette commande sur le terminal: 

rvm --default use Ruby_Version
6
Mayank Raipure

Pour ajouter toutes les fonctionnalités RVM à votre fichier .bash_profile, utilisez la commande suivante:

echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function' >> ~/.bash_profile

Après cela, vous devez recharger le shell actuel ou ouvrir une nouvelle session de terminal et taper la commande suivante pour recharger le fichier .bash_profile:

source .bash_profile

La solution ci-dessus ne fonctionnera que si RVM est installé pour l'utilisateur actuel. Une solution plus générale utiliserait la variable de chemin RVM:

# The following code loads RVM as user or system install:
[[ -s "$rvm_path/scripts/rvm" ]] && . "$rvm_path/scripts/rvm"
4
user2408574

Je venais juste d'appeler le code source ~/.bash_profile

3
Behzad

Lors d'une nouvelle installation d'Ubuntu 12.04, j'ai rencontré le même problème. Le programme d’installation de RVM crée ou ajoute à un fichier appelé ~/.bash_login le bit de code nécessaire pour éviter le problème initial:

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a Shell session *as a function*

Cependant, cela ne semble pas être invoqué. L'ajouter à ~/.bashrc a résolu le problème pour moi.

3
gordonbanderson

Installation de RVM, voir ici http://octopress.org/docs/setup/rvm/

1
hahakubile

Dans mon cas sur Ubuntu, l'entrée dans ~/.bashrc avait:

 [[ -s "$HOME/.rvm/scripts/rvm" ]] && ."$HOME/.rvm/scripts/rvm" # BAD

au lieu de:

 [[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # WORKING

Remarquez l'espace manquant entre. et "$ HOME.

De plus, si tel est le problème, vous devriez également remarquer une erreur lors du démarrage de votre terminal.

1
mohitj2007

J'ai eu une installation globale de RVM, qui exécute /etc/profile.d/rvm.sh. Cependant, ce script nécessite que BASH_VERSION ou ZSH_VERSION soit défini. Je courais de crontab, qui utilise "sh".

J'ai créé un script de wrapper qui utilise/bin/bash pour source /etc/profile.d/rvm.sh.

0
dfrankow

Vous devez modifier les préférences de votre émulateur de terminal pour autoriser la connexion Coquille. Parfois, il est nécessaire d'utiliser /bin/bash --login en tant que commander.

0
Moamen Abdelwahed