如何使用git组织50个相关的rails应用程序?

时间:2012-12-15 09:53:17

标签: ruby-on-rails git github

我正在开发50个相关的rails应用程序,它们之间会有细微的差异 - css可能会有所不同,也许每个应用程序都会有不同的路由和不同的视图标题,以便SEO等等。

但是当我改变其他东西时,我希望所有50个应用程序保持一致。所以基本上我必须得到我自己的cms,每个网站都有不同的设置。

我确定我不是第一个遇到这个问题的人。我如何在使用Rails,git,github和heroku时组织这个,以便在部署时,所有应用程序都会更新并保持一致,但仍保持自己的设置?

3 个答案:

答案 0 :(得分:4)

我将一个基础项目分叉并保持为"上游"。 我在我的开发环境中克隆了分叉项目并将其保存为" origin"。 所以我的开发环境有一个起源和一个上游。

当我做一些影响所有分叉项目的事情时,我在上游进行更改,然后我进入每个项目,从上游拉出并合并。

您还可以拥有上游层次结构,并使它们与原始上游保持同步。

答案 1 :(得分:1)

如果这些是纯粹的配置文件,最好的方法是遵循Heroku页面“Configuration and Config Vars”:

不要将这些文件放在Git仓库中。

  

使用Heroku CLI的configconfig:addconfig:getconfig:remove来管理配置变量

答案 2 :(得分:0)

如果可能的话,我非常喜欢只需维护一个项目。如果它只是应用程序的(用户控制的)样式,那么您可以采用大租户风格的多租户方式。您的应用会显示不同的端点,例如通过子域进行区分,您还可以将不同的顶级域指向。然后,应用程序的可变部分需要存储在数据库中,例如,样式,布局以及您拥有的任何用户控制的内容。我们概述了一种方法in the answers to this question,但肯定有更多方法。

相关问题