包含gem代码作为rails项目的一部分

时间:2015-12-16 13:26:48

标签: ruby-on-rails

我的rails 4项目依赖于Comfortable Mexican Sofa(CRM)作为宝石加载。 我检查了这个gem作为我的git存储库的子模块。

继续前进,这个宝石正在成为我项目的一部分:我正在为它添加功能 这取决于我的项目类别。

我想将这个gem作为一个子模块(以便能够从中获取更改) 主存储库)但仍然能够添加依赖于我的项目的代码。

实现这一目标的最简洁方法是什么? (我应该把整个gem子模块放到我的lib文件夹中吗? 我应该把它作为宝石引用吗?等...)

2 个答案:

答案 0 :(得分:2)

对我来说,在开发中,分离总是比绑定更好。我建议将其保留为gem并在单独的存储库中进行开发。

答案 1 :(得分:2)

  

我应该将它作为宝石引用吗

是的,您需要将其作为宝石引用。

使用外部库的一个好处是它们由一群非常聪明的人维护(大多数时候)。你不太可能像宝石所有者那样保持你所包含的子模块的最新状态。

您最擅长的是覆盖宝石的特定部分(例如,有多少人使用自己的控制器覆盖Devise功能),或者查看为宝石创建API,你可以从你的应用程序填充。