Ricordare che i manager delle versioni di ruby come rbenv e rvm sono creazioni relativamente recenti. Prima che esistessero, un utente amministratore di solito installava ruby in un percorso a livello di sistema come/usr/local. Ma i non amministratori avevano bisogno di un posto dove installare le proprie gemme, poiché non avevano il permesso di scrittura in/usr/local. Quindi i creatori di rubygems hanno deciso di aggiungere un percorso gem secondario nella home directory dell'utente corrente, che avrebbe una struttura simile all'ubicazione del sistema.
Ecco un esempio di ciò che i percorsi di gemme sembravano ai vecchi tempi:
- /usr/local/lib/ruby/gems/1.9.1
- /Users/kelvin/.gem/ruby/1.9.1
Ci può essere ancora macchine in cui rubino è installato come questo, e avete ancora che il ricorso del percorso automatica gemma secondaria . Naturalmente puoi anche aggiungere altri percorsi usando la variabile d'ambiente GEM_PATH, ma quella automatica è utile per gestire il caso comune.
Se si dispone dei diritti di amministratore o si utilizza un gestore delle versioni, è possibile ignorare la directory ~/.gem come un artefatto, una reliquia del passato, se lo si desidera.
Io uso 'gem quale% gemname%' per determinare il percorso in cui è installato gem. – pavelpopov