[rubygems] GitHub 소스에서 gem을 설치하는 방법은 무엇입니까?

최신 GitHub 소스에서 gem을 설치하고 싶습니다.

어떻게해야합니까?



답변

번 들러를 사용하는 경우 Gemfile에 다음과 같은 것을 추가해야합니다.

gem 'redcarpet', :git => 'git://github.com/tanoku/redcarpet.git'

그리고 .gemspec파일이있는 경우 실행시 gem을 가져오고 설치할 수 있어야합니다 bundle install.

UPD. 주석에 표시된대로 Bundler가 제대로 작동하려면 다음을 추가해야합니다 config.ru.

require "bundler"
Bundler.setup(:default)


답변

글쎄, 그것은 문제의 프로젝트에 달려 있습니다. 일부 프로젝트는 루트 디렉토리에 * .gemspec 파일을 가지고 있습니다. 이 경우에는

gem build GEMNAME.gemspec
gem install gemname-version.gem

다른 프로젝트에는 “gem”또는 “build”또는 이와 유사한 레이크 작업이 있습니다.이 경우 “rake”를 호출해야하지만 프로젝트에 따라 다릅니다.

두 경우 모두 소스를 다운로드해야합니다.


답변

github 저장소 (예 : ‘edge’) 또는 임의의 URL에서 gem을 설치할 수 있는 specific_install gem을 사용해보십시오 . 보석을 포크하고 여러 기계 등에서 해킹하는 데 매우 유용합니다.

gem install specific_install
gem specific_install -l <url to a github gem>

예 :

gem specific_install https://github.com/githubsvnclone/rdoc.git


답변

번 들러를 사용하면 자식 저장소에서 직접 보석을 사용할 수 있습니다. Gemfile에서 :

# Use the http(s), ssh, or git protocol
gem 'foo', git: 'https://github.com/dideler/foo.git'
gem 'foo', git: 'git@github.com:dideler/foo.git'
gem 'foo', git: 'git://github.com/dideler/foo.git'

# Specify a tag, ref, or branch to use
gem 'foo', git: 'git@github.com:dideler/foo.git', tag: 'v2.1.0'
gem 'foo', git: 'git@github.com:dideler/foo.git', ref: '4aded'
gem 'foo', git: 'git@github.com:dideler/foo.git', branch: 'development'

# Shorthand for public repos on GitHub (supports all the :git options)
gem 'foo', github: 'dideler/foo'

자세한 내용은 https://bundler.io/v2.0/guides/git.html을 참조 하십시오.


답변

OBSOLETE (댓글 참조)

프로젝트가 github에서 왔고 http://gems.github.com/list.html 의 목록에 포함되어 있다면 gem 소스에 github 저장소를 추가하여 설치할 수 있습니다.

$ gem sources -a http://gems.github.com
$ sudo gem install username-projectname


답변

퍼블릭 GitHub 리포지토리에서 젬을 얻는 경우 속기를 사용할 수 있습니다

gem 'nokogiri', github: 'tenderlove/nokogiri'


답변

또한 할 수 있습니다 gem install username-projectname -s http://gems.github.com