0

我有一个名为 的私有 gem,X其源代码托管在 Github 上。如果我想X在项目中使用,我会添加gem 'X', :git => 'git@github.com:my-org/x.git'到我项目的Gemfile. 然后我可以启动irb并键入require 'bundler/setup',然后require 'x'. 的功能X可用。

现在,我有一个不同的私有 gem,叫做Y,它的源代码也托管在 Github 上。我想X从内部使用Y

我怎样才能做到这一点?

4

1 回答 1

-1

如果您在 github 上配置了 ssh 密钥,这将起作用:

gem 'gem', :git => 'git@github.com:user/gem.git', :ref => 'ref'

您可以通过运行来测试它ssh -t git@github.com

其他选项是使用您的用户名和密码以及基本身份验证:

gem 'gem', git: 'https://user:password@github.com/user/gem.git'

或者更安全地使用环境变量来保护您的密码:

gem 'gem', :git => "https://#{ENV['gem_username']}:#{ENV['gem_password']}@github.com/gem.git"

如果您使用 CI 服务器来部署项目,最后一个示例也是一个好主意。

于 2017-02-09T19:49:46.927 回答