3

我正在着手使用 50 个相关的 Rails 应用程序,它们之间会有细微的差异 - css 可能会有所不同,并且为了 SEO 等,每个应用程序可能会有不同的路线和不同的视图标题等。

但是当我更改其他内容时,我希望所有 50 个应用程序都保持一致。所以基本上我将不得不拥有自己的 cms,每个网站都会有不同的设置。

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

4

3 回答 3

4

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

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

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

于 2012-12-15T10:41:20.163 回答
1

如果这些纯粹是配置文件,最好的方法是遵循 Heroku 页面“配置和配置变量”:

不要将这些文件放在 Git 存储库本身中。

使用 Heroku CLI 的configconfig:addconfig:get管理config:remove您的配置变量

于 2012-12-15T10:28:20.570 回答
0

如果可能的话,我非常喜欢只维护一个项目。如果它只是应用程序的(用户控制的)样式,您可能会采用 basecamp 样式中的多租户方法。您的应用程序将显示不同的端点,例如按子域区分,您也可以将不同的顶级域指向。然后需要将应用程序的可变部分存储在数据库中,例如样式、布局以及您拥有的任何用户控制的内容。这个问题的答案中概述了一种方法,尽管肯定有更多方法。

于 2012-12-15T11:28:57.607 回答