Pregunta

He leído " Rubygems, Bündler, y RVM " antes preguntar de nuevo.

Bueno, hay muchas preguntas como ésta, pero las personas que respondieron dicen que trabajan con Rubygems, RVM y Bündler, y no han explicado cómo cada uno de estos trabajos de forma aislada.

Estoy realmente confundida con la forma en los tres trabajos en forma aislada cuando estamos instalando gemas. Por favor, no me diga cómo se trabaja, lo que me va a ayudar, pero no voy a conocer lo que está sucediendo cuando jugamos con ellos.

Mi confusión puede ser dividido en estas preguntas. Cuando se instala una joya cuando:

  1. Sólo tengo Rubygems (sin RVM o Bündler)?
  2. Rubygems y RVM se instalan?
  3. se instalan Rubygems, RVM y Bündler?

Por favor, ayúdame a entender estas cosas, ya sea con recursos en la web o por sus respuestas detalladas.

¿Fue útil?

Solución

  1. Para averiguar dónde gemas están siendo instalados a, echo $GEM_HOME ejecutan en un terminal.
  2. Cuando se utiliza RVM, gemas están instalados en su RVM instalar, ya que cambia $ GEM_HOME. Correr echo $GEM_HOME ahora mostraría un camino en su RVM instalar.
  3. Cuando se añade a la mezcla Bündler, gemas estará instalado en $GEM_HOME, o, si se especifica una ruta cuando se instalará bundle install corriendo a ese camino. Para averiguar dónde una joya es a través de Bündler puede utilizar bundle show gemname para conseguir su ruta completa.

Otros consejos

Uso gem env a la lista de los caminos de gemas en cada contexto.

Sin gem env RVM informará las rutas de bibliotecas joya del sistema.

Con gem env RVM informará las rutas de bibliotecas de la gema de RVM gestionados.

Bündler gestiona dependencias de la aplicación y se instala en la biblioteca joya en su entorno. Si está utilizando RVM + Bündler, las gemas se instalarán en las RVM logrado directorios de la gema. Si está utilizando sin RVM, bundler instalará gemas en los directorios de la gema del sistema.

Para encontrar la ruta en la que se instala una joya uso:

gem which gem_name

Para encontrar ejecutables (como html2haml) uso:

which executable_name

Para evitar bundle exec html2haml mecanografiado que se recomienda por el equipo Bündler, usar mi rubygems bundler-joya .

También estoy tratando de entender cómo funciona. El blog " Consejos sobre el uso de Ruby, RVM, Pasajero, rieles, Bündler, ... en el desarrollo " me ayudó a tener una mejor visión de conjunto.

Por cierto, es una traducción de un artículo en francés, la versión francesa es mejor.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top