2010-05-12 135 views
73

在我的Gemfile我有這樣的:從Github分支安裝Gem?

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

如何安裝,作爲一個寶石,所以我可以測試它?

+4

您可能要接受不涉及建設的寶石答案。但我有偏見:) – Archonic 2014-03-10 16:32:32

+1

嗨蘭斯,我認爲你應該把接受的答案改爲@Archonics,因爲它很清楚它是最受歡迎的答案。 – 2016-02-26 00:46:43

+1

@Freddy完成!感謝指出:) – 2016-02-26 20:25:52

回答

171

你不需要在本地構建gem。在你的gemfile中你可以指定一個帶有ref,branch或者tag的github源文件。

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" 

然後運行bundle install或縮寫形式只是bundle

瞭解更多關於在這裏:​​http://bundler.io/man/gemfile.5.html#GIT

更新:a github source identifier

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

不過,他們警告不要使用它: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

這一個更清潔! – 2013-12-09 05:30:45

+0

從2017年更新,我不能得到GitHub源標識符的工作,但:git => ref工作正常 – Amias 2017-05-31 08:21:15

+0

也許它的Windows shenanans,但與RubyInstaller 2.3在Windows 10上,我有這個相同的設置一個寶石我有是未發佈的,我發佈'bundle install'命令,RubyGems說它獲取git倉庫和它的安裝,但是當我做'gem list gemname'時,它不會顯示在我本地安裝的gem中。 – Pred 2017-08-26 21:40:35

59
  1. 克隆Git存儲庫。

    $ git clone git://github.com/odorcicd/authlogic.git 
    
  2. 更改爲新目錄。

    cd authlogic 
    
  3. 結帳分支

    $ git checkout -b rails3 remotes/origin/rails3 
    
  4. 建立創業板。

    $ rake build gem 
    
  5. 安裝寶石。

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

我需要改變4.「耙構建」來構建寶石。 – 2010-10-19 15:18:05

+6

而不是4.我不得不使用gem build name-of-file.gemspec來構建gem rake build o rake gem不適合我 – marimaf 2011-11-17 17:02:43

+2

而不是4和5你可以做「rake install」 – drinor 2013-03-12 23:06:18

2

假設你是一個捆紮機用戶,

$ bundle install 

將安裝在你的Gemfile中列出的寶石。 (如果你不是Bundler用戶,爲什麼你有一個Gemfile文件?

+0

如果您打算對這個答案進行回調投票,請首先解釋*爲什麼*您認爲它應該被降低投票。沒有建設性反饋意見的反對意見對於促進理解沒有幫助。謝謝。 – sampablokuper 2016-09-08 17:23:46

2

我要修改@ janic_的答案,使其工作。 希望它能幫助像我這樣的其他紅寶石小菜鳥。

  1. 克隆Git存儲庫。

    $ git clone git://github.com/odorcicd/authlogic.git 
    
  2. 更改爲新目錄。

    $ cd authlogic 
    
  3. 結帳分支

    $ git checkout -b rails3 remotes/origin/rails3 
    
  4. 安裝包

    $ bundle install 
    
  5. 建立創業板。

    $ rake build 
    
  6. 安裝寶石。

    $ gem install pkg/gemname-1.23.gem