从Github Branch安装Gem?

时间:2010-05-12 23:27:27

标签: rubygems branch github

在我的gemfile中我有这个:

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

如何安装它作为宝石,以便我可以测试它?

4 个答案:

答案 0 :(得分:185)

您不需要在本地构建宝石。在gem文件中,您可以使用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.

在Bundler 2.0之后,您可以在Gemfile顶部附近解决上述问题:

git_source(:github) { |repo| "https://github.com/#{repo}.git" }

答案 1 :(得分:63)

  1. 克隆Git存储库。

    $ git clone git://github.com/odorcicd/authlogic.git
    
  2. 转到新目录。

    cd authlogic
    
  3. 结帐分行

    $ git checkout -b rails3 remotes/origin/rails3
    
  4. 构建gem。

    $ rake build gem
    
  5. 安装gem。

    $ gem install pkg/gemname-1.23.gem
    

答案 2 :(得分:4)

我必须修改@ 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. 构建gem。

    $ rake build
    
  6. 安装gem。

    $ gem install pkg/gemname-1.23.gem
    

答案 3 :(得分:0)

假设您是Bundler用户,

$ bundle install

将安装Gemfile中列出的gem。 (如果你不是Bundler用户,为什么你有一个Gemfile?