我创建了一个内部gem,用于我希望包含在我的Gemfile中的Rails项目。
宝石托管在Github.com上的私人仓库中(所以:git
不是一个选项)所以我假设最好的方向是包括宝石:path
,例如
gem 'mygem', :path => '/path/to/gem/dir'
我很好奇:
vendor/
?)vendor/
)答案 0 :(得分:0)
您可以访问供应商位置,并在gemfile中获取私有gem的身份验证信息,如下所示:
gem' foo',:git => ' https://my_username:my_password@github.com/my_github_account/my_repo.git'
但是,我猜你在gemfile中暴露这些敏感信息会很不舒服,所以你可以在你的gem文件中使用基于git协议的url:
GIT中://github.com/username/repo.git
基于git协议的网址是只读的,因此您的私人存储应该是完整的。
另外,我确信您可以编写一个capistrano任务来将私有gem部署到供应商目录,但这可能涉及在capistrano任务中输入您的github用户名/密码。此外,您可以在部署期间提示输入用户名/密码,而不是将其置于capistrano任务中。