Respuestas:
Sí, cuando lo haga gem install, buscará primero el directorio actual, por lo que si su archivo .gem está allí, lo recogerá. Lo encontré en la referencia de gemas , que también puede encontrar útil:
gem install instalará la gema nombrada. Intentará una instalación local (es decir, un archivo .gem en el directorio actual), y si eso falla, intentará descargar e instalar la versión más reciente de la gema que desee.
Gemfilepero no un .gemarchivo. Entonces, ¿qué es este .gemarchivo? ¿Qué debería contener? - Espera - ya veo. Te refieres a un gem-name.gemarchivo. Recuerde que en Unix es bastante normal tener un archivo que comience con un '.' así que es mejor explicarlo.
Además, puedes usar gem install --local path_to_gem/filename.gem
Esto omitirá el escaneo habitual del repositorio de gemas que ocurre cuando lo dejas --local.
Puedes encontrar otra magia con gem install --help.
Si creas tus gemas con bundler:
# do this in the proper directory
bundle gem foobar
Puede instalarlos con rastrillo después de que estén escritos:
# cd into your gem directory
rake install
Lo más probable es que tu gema descargada también lo sepa rake install.
Si desea trabajar en una bifurcación de una gema modificada localmente, la mejor manera de hacerlo es
gem 'pry', path: './pry'
en un Gemfile
... donde ./pryestaría el clon de su repositorio. Simplemente ejecute bundle installuna vez, y cualquier cambio en las fuentes de gemas que realice se reflejará inmediatamente. Con gem install pry/pry.gem, las fuentes aún se trasladan GEM_PATHy siempre tendrá que ejecutar ambas bundle gem pryy gem updateprobar.
Ve al camino donde está la gema y llama gem install -l gemname.gem
Bueno, esta es mi instalación SECA:
[Ruby Installation version]/lib/ruby/gems/[Ruby version]/cache)*.gemsarchivos" a un ordenador sin gemas en lugar propio caché joya (por defecto el mismo camino patrón de primer paso: [Ruby Installation version]/lib/ruby/gems/[Ruby version]/cache)[Ruby Installation version]/lib/ruby/gems/[Ruby version]/cache) y disparará el gem install anygemwithdependencieshere(por ejemplo cucumber-2.99.0)Está SECO porque después de instalar cualquier gema, por defecto, rubygems coloca el archivo de gema en el directorio de gemas de caché y no tiene sentido duplicar esos archivos, es más fácil si desea que ambas computadoras tengan las mismas versiones (o bloqueadas por reglas de seguridad paranoicas: v)
Editar: en algunas versiones de ruby o rubygems, no funciona y dispara alertas o errores, puede colocar gemas en otro lugar pero no secarse, otra alternativa es usar el comando de lanzamiento integrado
gem servery agregar la URL localhost en fuentes de gemas, más información en: https://guides.rubygems.org/run-your-own-gem-server/
Puede descargar gemas desde https://rubygems.org/gems/ o construir su gema local a través de un paquete y un estante.
p.ej:
Tenga cuidado de instalar dependencias antes de instalar gemas reales.
Nota: Si usa td-agent fluentd y ruby en la misma máquina. Asegúrese de utilizar el comando td-agent-gem de td-agent. td-agent tiene su propio Ruby.