Me gustaría instalar la gema de la última fuente de GitHub.¿Cómo instalar gema desde la fuente GitHub?
¿Cómo puedo hacer esto?
Me gustaría instalar la gema de la última fuente de GitHub.¿Cómo instalar gema desde la fuente GitHub?
¿Cómo puedo hacer esto?
en caso de que utilice bundler, es necesario añadir algo como esto a su Gemfile:
gem 'redcarpet', :git => 'git://github.com/tanoku/redcarpet.git'
Y en caso de que haya .gemspec
archivo, sh Debería poder buscar e instalar la gema al ejecutar bundle install
.
bueno, eso depende del proyecto en cuestión. Algunos proyectos tienen un archivo * .gemspec en su directorio raíz. En ese caso, sería
gem build GEMNAME.gemspec
gem install gemname-version.gem
Otros proyectos tienen una tarea rastrillo, llamado "tesoro" o "construir" o algo por el estilo, en este caso usted tiene que invocar "rastrillo", pero eso depende de la proyecto.
En ambos casos, debe descargar la fuente.
Gracias que ayuda mucho. – Vojto
Gracias - respuesta perfecta. –
Solo un consejo para que la gente sepa lo que realmente está sucediendo. El archivo 'gemname-version.gem' se crea al invocar' gem build' –
OBSOLETO (ver comentarios)
Si el proyecto es de GitHub, y contenía en la lista de http://gems.github.com/list.html, a continuación, puedes añadir el repositorio GitHub a las fuentes de gemas para instalarlo:
$ gem sources -a http://gems.github.com
$ sudo gem install username-projectname
GitHub ya no alberga gemas, por lo que ya no funciona. – nickh
o rly? Acabo de hacer esto y funcionó ... vaya a gems.github.com antes de agregarlo a sus fuentes, supongo. (pero no use sudo) – esharp
@esharp, alojan los que construyeron, pero ya no los construyen. Si la joya se actualizó [desde 2009] (https://github.com/blog/500-state-of-the-hub-rackspace-day-0), una copia de gems.github.com quedará obsoleta. – Tobu
Si instala usando bundler como lo sugiere gryzzly y la gema crea un binario, asegúrese de ejecutarlo con bundle exec mygembinary
ya que la gema se almacena en un directorio de bundler que no está visible en la ruta normal de la gema.
Pruebe la gema specific_install que le permite instalar una gema desde su repositorio github (como 'edge'), o desde una URL arbitraria. Muy útil para bifurcar gemas y piratearlas en múltiples máquinas y similares.
gem install specific_install
gem specific_install -l <url to a github gem>
e.g.
gem specific_install https://github.com/githubsvnclone/rdoc.git
podría agregar más explicación sobre la gema 'specific_install'? – microspino
Esto es exactamente lo que estaba buscando, similar al soporte de pepita de Python. gem specific_install -l
Super cool! lástima que no está en la línea de comandos por defecto gema. –
En una máquina Linux nueva también necesita instalar el comando git. El comando bundle lo usa detrás de escena.
También se puede hacer gem install username-projectname -s http://gems.github.com
Obsoleto, vea los comentarios de la otra respuesta. –
Todavía me ayudó con un problema con un código base anterior. Sí, es 2013 y estoy trabajando en un proyecto de carriles 2.3.4. –
Si usted está recibiendo sus gemas de un repositorio GitHub pública, puede utilizar la abreviatura
gem 'nokogiri', github: 'tenderlove/nokogiri'
Bundler le permite usar joyas directamente de los repositorios Git. En su Gemfile:
# Use the http(s), ssh, or git protocol
gem 'foo', git: 'https://github.com/dideler/foo.git'
gem 'foo', git: '[email protected]:dideler/foo.git'
gem 'foo', git: 'git://github.com/dideler/foo.git'
# Specify a tag, ref, or branch to use
gem 'foo', git: '[email protected]:dideler/foo.git', tag: 'v2.1.0'
gem 'foo', git: '[email protected]:dideler/foo.git', ref: '4aded'
gem 'foo', git: '[email protected]:dideler/foo.git', branch: 'development'
# Shorthand for public repos on GitHub (supports all the :git options)
gem 'foo', github: 'dideler/foo'
Para obtener más información, consulte http://bundler.io/git.html
En su Gemfile, añada lo siguiente: referencia, rama y etiqueta opciones
gem 'example', :git => 'git://github.com/example.git'
También puede agregar,
Por ejemplo, si desea descargar desde una sucursal en particular:
gem 'example', :git => "git://github.com/example.git", :branch => "my-branch"
A continuación, ejecute:
bundle install
También necesitaba agregar lo siguiente (agregado a mi config.ru): 'require" bundler " Bundler.setup (: predeterminado)' Ver [bundler docs] (http://gembundler.com/bundler_setup.html) para más detalles –
Además, se pueden especificar las opciones de ref, branch o tag, por ejemplo, 'gem 'redcarpet',: git => 'git: //github.com/tanoku/redcarpet.git',: branch => 'yourbranch' ' –
si se despliega en Heroku, es posible que desee utilizar' https: // 'en lugar de' git: // ' –