我有一个网站,我需要部署到大约30个客户。除品牌外,它们都是一样的。使用SVN,我想拥有该产品的一个基本版本,然后只为每个客户提供不同的品牌内容(图像,CSS)。这样,当我维护基础产品时,我不必为每个客户复制该更改。部署只是一个更新和发布的案例。
听起来很简单,但我在SVN中遇到此问题。我一直在使用如下结构来研究SVN外部:
客户1
客户2
然后使用将Customer Base文件夹指向主基本文件夹的外部。这是有效的,但我需要覆盖(例如)客户1 \ Base \ Images文件夹中的客户特定的图像,当我设置外部因为它抱怨“客户1 \基地\图像不是工作副本根“。它确实似乎已经覆盖了客户的图像。
也许外界不是答案。
答案 0 :(得分:0)
在您的情况下,界面明显与功能分开。可能性如下(如果我很好理解你的问题):
在专用的SVN存储库中管理您的应用程序(像往常一样,使用您的主干,分支和标记)。并在另一个存储库中管理您的设计版本,例如以下结构:
./Customer_1
./Customer_1/trunk
./Customer_1/tags
./Customer_1/branches
./Customer_2
./Customer_2/trunk
./Customer_2/tags
./Customer_2/branches
...
通过这种分离,您可以轻松管理主应用程序的版本号。并且每个客户都有一个“小”存储库,可以轻松复制设计版本,以svn copy
启动另一个版本。