Установить Gem из Github Branch?

В моем gemfile у меня есть это:

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

Как мне установить это как драгоценный камень, чтобы я мог проверить это?

5 ответов

Решение

Вам не нужно строить камень локально. В вашем gemfile вы можете указать источник github с ref, branch или tag.

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

Обновление: есть идентификатор источника github.

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.

  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
    

Я должен изменить ответ @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
    

Чтобы обновить ответ @Archonic, вам необходимо заменить протокол git на протокол https.

      fatal: remote error:
  The unauthenticated git protocol on port 9418 is no longer supported.

Поэтому нужно написать:

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

Предполагая, что вы являетесь пользователем Bundler,

$ bundle install

установит драгоценные камни, перечисленные в вашем Gemfile. (И если вы не являетесь пользователем Bundler, зачем вам Gemfile?

Другие вопросы по тегам