SVN-如何处理一个项目,两种版本,唯一的区别是一个有几个附加文件

SVN-如何处理一个项目,两种版本,唯一的区别是一个有几个附加文件,svn,project-management,tortoisesvn,release-management,Svn,Project Management,Tortoisesvn,Release Management,我认为一种方法是保留一个代码库,在导出时,根据发布要求手动添加或不添加这些附加文件。但它要求您记住每次导出副本时都要这样做,这很容易忘记 我在SVN中为项目创建了一个包含这些文件的分支,但问题是每次更改主干时,我都需要在分支或合并中再次执行。我如何在不需要维护两个代码库的情况下获得所需的版本?或者是否有一种方法可以自动同步两个项目(主干、分支)的指定零件文件?有什么建议吗?我会将所有文件保存在一个分支中,并告诉我的发布机制应该包含哪些文件。如果不知道您的发布过程是如何工作的,很难说更多…使用单个

我认为一种方法是保留一个代码库,在导出时,根据发布要求手动添加或不添加这些附加文件。但它要求您记住每次导出副本时都要这样做,这很容易忘记


我在SVN中为项目创建了一个包含这些文件的分支,但问题是每次更改主干时,我都需要在分支或合并中再次执行。我如何在不需要维护两个代码库的情况下获得所需的版本?或者是否有一种方法可以自动同步两个项目(主干、分支)的指定零件文件?有什么建议吗?

我会将所有文件保存在一个分支中,并告诉我的发布机制应该包含哪些文件。如果不知道您的发布过程是如何工作的,很难说更多…

使用单个分支/主干模型肯定会在关键时刻导致痛苦和误解。虽然痛苦,但你需要有两个分支。。。或者可能通过svn:externals将差异设置为单独的项目。这样,您就可以确保得到您想要的版本,仅此而已

一个好的构建过程在这里很有用。在web2project中,我们使用了一个非常健壮的Phing*脚本(详细说明如下:-根据需要处理从标记或主干中提取的操作。好的方面是,我们只运行一个命令(然后指定一个版本)来生成一个新的发布包

  • Phing只是PHP世界的蚂蚁。概念相同,语法非常相似

当我需要发布时,我使用tortoisesvn导出存储库的副本,不知道“告诉我的发布机制…”,这是什么意思?这意味着有一个构建脚本或其他工具来“构建”最终的应用程序/项目。这个构建脚本(可以是make或cmake或ant或maven,一个客户shell脚本等)将有两个版本,一个用于项目a,一个用于项目B,或者在打包源代码进行部署时告诉它做一些不同的事情。我经常使用这个选项。构建脚本可以选择是否包含整个目录树、将服务器应用程序部署到此服务器或该服务器等。这是否意味着我需要另一个工具来实现此功能?eclipse?根据您的需求,普通的旧BAT文件可能适合您。