Domanda

ho letto " Rapporti tra Rubygems, Bundler e RVM " prima chiedendo di nuovo.

Bene, ci sono molte domande come questa, ma le persone che hanno risposto dichiara di lavorare con Rubygems, RVM e Bundler, e loro non hanno spiegato come ognuno di questi lavori in isolamento.

Sono davvero confuso di come il lavoro di tre in isolamento quando stiamo installando gemme. Si prega di non dirmi come si lavora, che mi aiuterà, ma non voglio imparare ciò che sta accadendo quando giochiamo con loro.

La mia confusione può essere suddiviso in queste domande. In cui è installato un gioiello quando:

  1. Non mi resta che Rubygems (senza RVM o Bundler)?
  2. Rubygems e RVM sono installati?
  3. Rubygems, RVM e Bundler vengono installati?

Si prega di aiutare a capire questa roba sia con risorse sul web o tramite le vostre risposte dettagliate.

È stato utile?

Soluzione

  1. Per scoprire dove le gemme vengono installati a, eseguire echo $GEM_HOME in un terminale.
  2. Quando si utilizza RVM, gemme sono installati nel vostro RVM installare come cambia $ GEM_HOME. echo $GEM_HOME Esecuzione ora mostrerebbe un percorso nel vostro RVM installare.
  3. Quando Bundler viene aggiunto al mix, gemme sarà o essere installato in $GEM_HOME, o, se si specifica un percorso quando bundle install esecuzione verrà installato a quel percorso. Per scoprire dove una gemma è attraverso Bundler è possibile utilizzare bundle show gemname per ottenere il suo percorso completo.

Altri suggerimenti

Usa gem env all'elenco dei percorsi Gem in ogni contesto.

Senza RVM gem env segnalerà i percorsi della libreria di sistema gemma.

Con RVM gem env segnalerà i percorsi di libreria gemma RVM gestiti.

Bundler gestisce le dipendenze di applicazioni e installazioni nella libreria gemma nel proprio ambiente. Se si utilizza RVM + Bundler, le gemme saranno installati nelle RVM gestito directory gemma. Se si utilizza senza RVM, bundler installerà gemme nelle directory di sistema di gemme.

Per trovare il percorso in cui una gemma è installato l'uso:

gem which gem_name

Per trovare gli eseguibili (come html2haml) utilizzo:

which executable_name

Per evitare di digitare bundle exec html2haml che è raccomandato dal team Bundler, usare la mia rubygems-bundler gioiello .

Sto anche cercando di capire come funziona. Il blog " Consigli sull'uso di Ruby, RVM, passeggero, Rails, Bundler, ... nello sviluppo " mi ha aiutato avere una migliore visione d'insieme.

A proposito, si tratta di una traduzione di un articolo francese, la versione francese è migliore.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top