如何在SVN中处理App brandint /轻微的GUI变体?

时间:2011-07-11 08:03:05

标签: svn version-control branch versioning

我们有一个移动应用程序,我们想向多个(B2B)客户提出建议。该应用程序将代表他们发布给最终客户,但所有开发都将由我们完成。

到目前为止,我们已经构建了原型应用程序。这个将永远被视为主人,并进行品牌重塑和可能轻微的功能修改,最终成为特定客户的具体版本。最终,原型应用程序会有多种变体。

将在原型应用程序中开发功能和错误修正,我们希望使用SVN将这些更改合并到特定的客户端应用程序中。不同的具体应用程序将各自拥有自己的生命周期和版本。

我们应该使用分支机构,不同的存储库和变更集,......?任何人都可以给我们一个良好的开端,我们应该如何组织我们的SVN存储库/ ies来启用它?

1 个答案:

答案 0 :(得分:0)

如果每个具体安装都有自己的生命周期和版本控制,那么您将需要能够独立地分支和标记每个安装。但是,为了简化从原型到每个特定版本的合并更改,所有版本都应位于同一个存储库中。

所以我将按照以下方式构建一个存储库:

 Prototype
    Branches
    Tags
    Trunk
 SpecificTypeA
    Branches
    Tags
    Trunk
 Common
    Branches
    Tags
    Trunk   

如果有任何公共代码适用于所有安装(即白标代码),那么我会将其存储在一个单独的(公共)存储库中,并通过SVN Externals引入dll。

 SpecificTypeA
     Trunk
        Src
        ExtLib*

其中ExtLib表示公共代码的特定标记修订版的链接。

基本上,保留原型/特定版本分支中所需的少量代码。