2010-05-12 5 views
73

Dans mon Gemfile j'ai ceci:Installer Gem de la branche Github?

gem "authlogic", :git => "git://github.com/odorcicd/authlogic.git", :branch => "rails3" 

Comment puis-je installer que comme un petit bijou que je puisse le tester?

+4

Vous voudrez peut-être accepter la réponse qui ne nécessite pas la construction de la pierre précieuse. Mais je suis partial :) – Archonic

+1

Hi Lance, je pense que vous devriez changer la réponse acceptée à @Archonics car il est assez clair que c'est la préférée. –

+1

@Freddy fait! merci de souligner :) –

Répondre

171

Vous n'avez pas besoin de construire la gemme localement Dans votre gemfile, vous pouvez spécifier une source github avec un ref, une branche ou une balise.

gem 'rails', :git => "git://github.com/rails/rails.git", :ref => "4aded" 
gem 'rails', :git => "git://github.com/rails/rails.git", :branch => "2-3-stable" 
gem 'rails', :git => "git://github.com/rails/rails.git", :tag => "v2.3.5" 

Ensuite, vous exécutez bundle install ou la forme courte est juste bundle

En savoir plus ici. http://bundler.io/man/gemfile.5.html#GIT

Mise à jour: il y aa github source identifier.

gem 'country_select', github: 'stefanpenner/country_select' 

Cependant, ils mettent en garde contre son utilisation: NOTE: This shorthand should be avoided until Bundler 2.0, since it currently expands to an insecure git:// URL. This allows a man-in-the-middle attacker to compromise your system.

+7

Celui-ci est plus propre! –

+0

mise à jour de 2017, je ne pouvais pas obtenir l'identifiant source GitHub pour fonctionner, mais le: git => ref fonctionne bien – Amias

+0

Peut-être ses manigances Windows, mais avec RubyInstaller 2.3 sur Windows 10, j'ai cette même configuration pour un bijou que j'ai est inédit, et j'émets la commande 'bundle install', RubyGems dit qu'elle récupère le repo git, et c'est installé, mais quand je fais' gem list gemname' il n'apparaît pas dans mes gems installés localement. – Pred

59
  1. Clonez le référentiel Git.

    $ git clone git://github.com/odorcicd/authlogic.git 
    
  2. Passez dans le nouveau répertoire.

    cd authlogic 
    
  3. branche Commander

    $ git checkout -b rails3 remotes/origin/rails3 
    
  4. Construire la pierre précieuse.

    $ rake build gem 
    
  5. Installez la gemme.

    $ gem install pkg/gemname-1.23.gem 
    
+13

J'avais besoin de changer 4. pour "rake build" pour construire la gemme. –

+6

Au lieu de 4. J'ai dû utiliser gem build nom-de-fichier.gemspec pour construire la construction rake gem o rake gem n'a pas fonctionné pour moi – marimaf

+2

Au lieu de 4 et 5, vous pouvez faire "rake install" – drinor

2

En supposant que vous êtes un utilisateur Bundler,

$ bundle install 

installera les pierres précieuses figurant dans votre Gemfile. (Et si vous n'êtes pas un utilisateur de Bundler, pourquoi avez-vous un Gemfile?

+0

Si vous envisagez de décliner cette réponse, veuillez d'abord expliquer * pourquoi * vous pensez qu'il devrait être déclassé. Les votes négatifs sans commentaires constructifs ne sont pas utiles pour faciliter la compréhension. Merci. – sampablokuper

2

Je dois modifier la réponse de @ janic_ pour le faire fonctionner. Espérons que cela aidera d'autres ruby ​​noobs comme moi.

  1. Cloner le référentiel Git.

    $ git clone git://github.com/odorcicd/authlogic.git 
    
  2. Passez dans le nouveau répertoire.

    $ cd authlogic 
    
  3. branche Commander

    $ git checkout -b rails3 remotes/origin/rails3 
    
  4. Installer faisceaux

    $ bundle install 
    
  5. Construire la pierre précieuse.

    $ rake build 
    
  6. Installez la gemme.

    $ gem install pkg/gemname-1.23.gem 
    
Questions connexes