0

我有两个项目在各自的私有 GitHub 存储库中进行版本控制。

其中一个是 Rails 应用程序,另一个是 Rails 引擎。

我不想将 Rails 引擎作为公共 gem 公开。

如何以 Heroku 可以解决的方式声明我的 Rails 应用程序依赖于引擎?

4

3 回答 3

4

您可以使用像Gemfury这样的私有 gem 服务器。它也是一个 Heroku 插件(免费计划适合您的情况)。

这样您就可以发布 gem 的版本。工作起来很像 ruby​​gems,但是是私有的。

于 2013-10-29T11:23:31.730 回答
2

假设您的引擎是私有 Github 存储库中的 gem,您可以尝试这种使用 OAuth 令牌的方法:

https://gist.github.com/masonforest/4048732

如评论中所述,涉及在 Gemfile 中硬编码 OAuth 令牌值的版本不如使用环境变量安全。

于 2013-10-29T11:24:36.130 回答
1

您可以通过将源放在vendor文件夹中来供应您的引擎,然后通过以下方式在您的Gemfile参考中path

# Gemfile
gem 'some_engine', path: 'vendor/some_engine'

要么直接复制粘贴源代码,要么使用 Git 子模块。运行bundle install,你应该设置。

于 2013-10-29T13:39:35.957 回答