具有相同基础仓库的两个“配置”时的存储库结构?

时间:2009-06-13 10:22:15

标签: continuous-integration repository branch repository-design

所以我的存储库存在一些结构问题。我希望你们能给我一些关于如何推进这项工作的建议。

设置;

我有一个大型网络项目,集成了多个开源解决方案。我在Bazaar存储库中拥有它。

问题;

我现在想要这个网站的两个或更多“配置”,这意味着数据库和css / templates 必须是不同的。如何正确分支?我不希望我的“基础Web项目”存在于两个或更多存储库中。

将另一个配置数据库放在另一个仓库中很好,但是当我从基础仓库移出.css时会出现问题。

快速搜索“.css”可找到大约200个文件。我可以清理它,但每当我更新我的开源目录时,我都会有一个集成地狱。

观;

我目前的想法是有一个basesite-repo 没有 css文件,另一个config-repo包含basesite-repo和所有200个.css文件的数据库。

每当我想要检查网站并进行设置时,这都可以正常工作,在同一目录中有两个检出。应该工作吧?

但是当我在本地工作(意味着基地+配置)时,我该如何解决?在同一目录中有两个分支?我预见发布错误修复将是一个痛苦...如果它甚至支持(?)

我的构思结构如何;

//base repo
<base site repo>
 -<admin>
     -index.php
 -<user>
     -index.php
...
 -<component>
      -<helper_v1.43>
          -index.php

//config 1 repo
<config1-repo>
 -<database>
 -<component>
      -<helper_v1.43>
          -<template>
              -main.css
-<admin>
  -admin.css
...
 -<user>
   -<timemodule>
       -<template>
           -time.css

在过去十年中,这个问题必须已经解决了好几次。但我仍然很丢失,所以任何指导都会受到赞赏。

1 个答案:

答案 0 :(得分:1)

许多源代码控制系统支持包含大致相同文件的分支的想法。将基本文件放在一个分支存储库中可能不是问题。

您还可以为第二个回购中的配置内容创建分支。在应用修补程序之前在分支之间切换。

另一种方法,如果您有任何类型的构建或结帐过程,请检查配置内容的两个分支(或两个存储库)以分隔目录,然后在构建期间将正确的一个复制到正确的位置。 / p>