Установить 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.
Клонировать репозиторий Git.
$ git clone git://github.com/odorcicd/authlogic.git
Перейдите в новый каталог.
cd authlogic
Оформить заказ
$ git checkout -b rails3 remotes/origin/rails3
Постройте драгоценный камень.
$ rake build gem
Установите драгоценный камень.
$ gem install pkg/gemname-1.23.gem
Я должен изменить ответ @janic_, чтобы он работал. Надеюсь, это поможет другим рубиновым нубам, таким как я.
Клонировать репозиторий Git.
$ git clone git://github.com/odorcicd/authlogic.git
Перейдите в новый каталог.
$ cd authlogic
Оформить заказ
$ git checkout -b rails3 remotes/origin/rails3
Установить пакеты
$ bundle install
Постройте драгоценный камень.
$ rake build
Установите драгоценный камень.
$ 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?