如何使用git管理具有单独客户端资产的代码库?

时间:2012-04-16 20:29:45

标签: ruby-on-rails git version-control

我有一个包含核心Ruby on Rails项目的项目,该项目将部署到几个不同的客户端。我希望能够更新核心应用程序,同时在视图和公用文件夹中保持单独的更改。

换句话说,每当我更改app / controllers / product_controllers.rb时,我都需要所有客户端获得该更改,同时单独管理app / view / products / index.html.erb或public / css / styles.css Acme和Newco和Jones等。

这似乎与分支/标记要解决的内容不同,因为这些文件夹中的更改永远不会合并。

2 个答案:

答案 0 :(得分:1)

我会为每个客户端创建单独的分支,并在每次进行重大更改时合并需要合并的更改(在您的案例控制器中),并保留特定于给定客户端的文件。

你也可以在模块中划分你的代码(我不会建议你究竟是多少 - 这取决于你和每个项目的不同)并将它们作为不同的项目。

在类似unix的系统中,如果你有类似“应用程序的核心”(每个项目都很常见)的东西,你甚至可以将它放在一个文件夹中,并使用符号链接在不同的项目中使用。

答案 1 :(得分:0)

您仍然可以为每个客户使用分支。分支不必合并。或者你可以为每个客户端分叉。它与分支的不同之处在于它创建了一个单独的仓库