我想从最新的GitHub源安装gem。
我怎么做呢?
我想从最新的GitHub源安装gem。
我怎么做呢?
这取决于所讨论的项目。有些项目有*。Gemspec文件在他们的根目录。在这种情况下,它将是:
gem build GEMNAME.gemspec
gem install gemname-version.gem
其他项目有一个rake任务,称为gem或build或类似的东西。在这种情况下,您必须调用rake <taskname>,但这取决于项目。
在这两种情况下,您都必须下载源代码。
过时(见评论)
如果项目来自github,并且包含在http://gems.github.com/list.html的列表中,那么你可以将github repo添加到gems源代码中来安装它:
$ gem sources -a http://gems.github.com
$ sudo gem install username-projectname
如果你正在使用捆绑器,你需要在你的Gemfile中添加这样的东西:
gem 'redcarpet', :git => 'git://github.com/tanoku/redcarpet.git'
如果存在.gemspec文件,它应该能够在运行bundle install时获取并安装gem。
乌利希期刊指南。正如评论中所指出的,为了让Bundler正常工作,你还需要在config.ru中添加以下内容:
require "bundler"
Bundler.setup(:default)
如果你按照gryzzly的建议使用bundler安装,并且gem创建了一个二进制文件,那么确保你使用bundle exec mygembinary运行它,因为gem存储在一个bundler目录中,而这个目录在正常的gem路径中是不可见的。
尝试specific_install gem,它允许您从其github存储库(如'edge')或从任意URL安装一个gem。非常有用的分叉宝石和黑客对他们在多台机器等。
gem install specific_install
gem specific_install -l <url to a github gem>
e.g.
gem specific_install https://github.com/githubsvnclone/rdoc.git
如果你从一个公共的GitHub存储库中获取你的gems,你可以使用这个简写
gem 'nokogiri', github: 'tenderlove/nokogiri'
Bundler允许你直接从git存储库中使用gems。 在您的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
在您的Gemfile中,添加以下内容:
gem 'example', :git => 'git://github.com/example.git'
你也可以添加ref, branch和tag选项,
例如,如果你想从一个特定的分支下载:
gem 'example', :git => "git://github.com/example.git", :branch => "my-branch"
然后运行:
bundle install
你也可以使用rdp/specific_install gem:
gem install specific_install
gem specific_install https://github.com/capistrano/drupal-deploy.git