Css 将SVN用于具有自定义内容的共享代码库

Css 将SVN用于具有自定义内容的共享代码库,css,svn,externals,Css,Svn,Externals,我有一个网站,我需要部署到大约30个客户。除了品牌之外,它们都是一样的。使用SVN,我希望有一个基本版本的产品,然后只是不同的品牌内容图像,每个客户的CSS。这样,当我维护基础产品时,我就不必为每个客户复制这些更改。部署只是更新和发布的一个例子 听起来很简单,但我在SVN中实现这一点时遇到了问题。我一直在使用以下结构研究SVN外部: 主要的 基础 . . 图像 客户1 基础 风俗 图像 客户2 基础 风俗 图像 然后使用外部命令将客户基础文件夹指向主基础文件夹。这是可行的,但我需要用客户特定的图

我有一个网站,我需要部署到大约30个客户。除了品牌之外,它们都是一样的。使用SVN,我希望有一个基本版本的产品,然后只是不同的品牌内容图像,每个客户的CSS。这样,当我维护基础产品时,我就不必为每个客户复制这些更改。部署只是更新和发布的一个例子

听起来很简单,但我在SVN中实现这一点时遇到了问题。我一直在使用以下结构研究SVN外部:

主要的 基础 . . 图像 客户1

基础 风俗 图像 客户2

基础 风俗 图像 然后使用外部命令将客户基础文件夹指向主基础文件夹。这是可行的,但我需要用客户特定的图像覆盖Customer 1\Base\images文件夹中的图像,当我设置外部时,它会抱怨“Customer 1\Base\images不是工作副本根目录”。不过,它似乎确实覆盖了客户的图像


也许外部不是答案。

在您的情况下,接口与功能是明确分开的。如果我充分理解您的问题,则有以下可能:

像往常一样,使用主干、分支和标记在专用的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轻松复制一个设计版本以启动另一个设计版本。

存储库的真实树和svn pl-v的输出将有助于更好地理解您在添加或替换核心资源时遇到的问题?