Come installare e utilizzare diverse versioni di ruby?


15

Sto imparando rotaie da libri diversi che usano versioni diverse di rubino e rotaie. In questo momento ho ruby ​​1.87 installato sul mio Mac OS X Snow Leopard (in /usr/bin), ma devo usare ruby ​​1.9 anche per un'applicazione diversa.

Qualcuno può dirmi come farlo funzionare? Sono nuovo di questo, quindi il maggior numero di istruzioni possibile sarebbe molto apprezzato.

Risposte:


20

Esistono due "gestori di versioni di Ruby", tra cui puoi scegliere:

Questi ti consentono di mantenere più versioni di Ruby sullo stesso sistema. Dopo aver installato un gestore versioni e installato la tua versione Ruby, non rovinerai il Ruby del sistema e le sue Gemme, il che è il massimo vantaggio. Non più sudo! Niente più errori di autorizzazione e conflitti di gemme.

Quale dovrei scegliere?

Entrambi fanno la stessa cosa, ma seguono filosofie diverse. A te la scelta

Personalmente consiglierei rbenvper la sua semplicità. Lo uso da anni e ha sempre funzionato bene. In precedenza avrei raccomandato RVM (e una versione precedente di questa risposta ne parlava in realtà), ma sento che è più difficile entrare.

Come li installo?

Se si sceglie rbenv:

  • Seguire le istruzioni di installazione
  • Installare ruby-build
  • Esegui rbenv install x.x.xdove x.x.xè la versione (usa rbenv install --listper vedere quali sono disponibili
  • Corri rbenv global x.x.xper cambiare la tua versione globale di Ruby

Se scegli RVM:

  • Utilizzare il metodo di installazione sicura
  • Leggi le istruzioni di installazione - probabilmente desideri la configurazione per utente singolo
  • Utilizzare rvm list knownper elencare i rubini disponibili ed eseguire rvm install x.x.xper installare una versione specifica.
  • Utilizzare rvm use x.x.x --defaultper modificare il Ruby predefinito

1
Vedi anche rbenv .
user1686

@grawity Perché non pubblicare un'altra risposta? Buono per avere alternative, non l'ho ancora veramente esaminato rbenv.
slhck,

grazie mille, aiuta anche a passare da una versione all'altra di Rails? libri diversi che sto usando impiegano 3.05 (penso) e 3.1 e sta causando problemi ...
Michael,

Ho provato la linea di installazione che hai scritto (e che è anche sul sito rvm) e ho ricevuto un messaggio di errore: bash: linea 152: git: comando non trovato bash: linea 154: git: comando non trovato
Michael

Ah, hai bisogno git, ovviamente. Scusa, l'ho dimenticato. Puoi installare Git con il programma di installazione di OS X (basta selezionare l'ultima versione in alto).
Slhck,

7

Penso che rbenv meriti almeno la propria risposta.

C'è una battaglia costante tra i fan di rbenv e quelli di RVM ma personalmente mi piace molto di più di rbenv. Come afferma Sam Stephenson (l'autore), rbenv si occupava esclusivamente di cambiare versione di Ruby (al contrario di RVM, che fa molto di più).

Su OS X, è particolarmente facile provarlo. Segui semplicemente le eccellenti istruzioni di installazione sulla pagina di Github (se hai Homebrew installato, in pratica è solo un brew install rbenv ruby-build).

Per quanto riguarda il cambio delle versioni di Rails, una volta ho scritto un articolo su ciò che potrebbe interessarti per te.


1
Ecco una breve descrizione dell'autore di rbenv sulle principali differenze con RVM e le ragioni per scegliere rbenv. La semplicità di rbenv è stata la ragione principale per cui mi sono trasferito lontano da RVM. La gestione di set di gemme specifiche dell'applicazione è fatta meglio di IMO con Bundler: per questo non è necessario un gestore di versioni di Ruby.
Jochem Schulenklopper,

Esatto: gestire set di gemme specifiche dell'applicazione è compito di Bundler . Non sono mai stato un fan dei set di gemme legati ai gestori di versioni.
Michael Trojanek,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.