¿Cómo obtener un "commit" específico de una gema de github?

155

Estoy usando rails_admin , y como está en desarrollo (muy) activo, los errores aparecen de vez en cuando.

Por lo que puedo decir, no hay versiones para la gema, para la gema en github, por lo que no puedo usar la :versionclave para la declaración de gema en el Gemfile.

¿Hay alguna manera de "vincular" un commit específico (que sé que funciona bien para mí) al Gemfile?

Actualmente tengo en mi Gemfile:

gem 'rails_admin', 
  :git => 'git://github.com/sferik/rails_admin.git'

Me gustaría poder hacer algo como esto (ejemplo "commit_id"):

gem 'rails_admin', 
  :git => 'git://github.com/sferik/rails_admin.git',
  :commit_id => "4e7d53e3c5c4c3c5c43c3"

¿Es esto posible hacer con github?

Zabba
fuente

Respuestas:

63

Una versión más corta:

gem 'rails', :github => 'rails/rails', :ref => '4aded'

O, en Ruby 1.9+

gem 'rails', github: 'rails/rails', ref: '4aded'
Eric L.
fuente
Y configurar la fuente predeterminada de github en https con eso:git_source(:github) do |repo_name| repo_name = "#{repo_name}/#{repo_name}" unless repo_name.include?("/") "https://github.com/#{repo_name}.git" end
Dorian