2011-10-19 42 views
11

使用捆绑,你可以做这样的事情在Gemfile是否可以直接从git仓库安装gem?

gem 'my_gem', :git => '[email protected]:me/my_gem.git' 

这建立在回购宝石和安装。很棒。是否可以使用命令行gem工具来做类似的事情?像这样?

gem install my_gem --git="[email protected]:me/my_gem.git" 

很明显,该命令不起作用,但有没有像这样的事情呢?我知道我可以克隆回购,运行gem build my_gem.gemspec,然后运行gem install my_gem-1.2.3.gem。但我想知道是否有一个直接的单线程隐藏幕后的这些中间步骤。

回答

6

因为不像典型的Git仓库,GitHub上建立的宝石,如果该项目托管在GitHub和宝石被发现在source list,那么你可以这样添加GitHub的到你的源代码列表:

$ gem sources -a http://gems.github.com 

,然后根据需要在一个单一的步骤以后安装的宝石,如:

$ sudo gem install username-projectname 

否则,没有一步到位的解决方案,你将不得不做这样的事情:

  1. 下载宝石的zip/tar文件
  2. gem build <gemname>.gemspec
  3. sudo gem install <gemname>-x.x.x.gem
+0

我的宝石是不是在源列表。它是一个私人存储库。 –

+1

和后面的解决方案我已经知道,正如我在我的文章中所概述的。我只是想知道是否有一个单行的宝石命令。也许没有。 –

+0

你可以编写一个你传递参数的shell函数。但是,我不知道任何光滑的单线队员。 –

相关问题