SVN存储库结构和共享程序集

SVN存储库结构和共享程序集,svn,deployment,assemblies,repository,Svn,Deployment,Assemblies,Repository,我们正在尝试重组我们的SVN存储库,并在主干下包含一个lib文件夹,以容纳项目所依赖的程序集 我很想知道你们是如何处理共享程序集的?您是否有跨不同主干库文件夹的多个副本?您是否有某种生成过程可以在生成程序集时自动更新库文件夹 你们在这里是怎么处理的 谢谢 对于共享相同libs的不同存储库,我使用对承载libs的存储库的外部引用,以便它们共享相同的代码。如果在同一存储库中有多个项目需要编译libs,那么构建过程会根据需要从顶级libs文件夹复制到每个项目子文件夹。我们会对所有核心库进行版本设置 例

我们正在尝试重组我们的SVN存储库,并在主干下包含一个lib文件夹,以容纳项目所依赖的程序集

我很想知道你们是如何处理共享程序集的?您是否有跨不同主干库文件夹的多个副本?您是否有某种生成过程可以在生成程序集时自动更新库文件夹

你们在这里是怎么处理的


谢谢

对于共享相同libs的不同存储库,我使用对承载libs的存储库的外部引用,以便它们共享相同的代码。如果在同一存储库中有多个项目需要编译libs,那么构建过程会根据需要从顶级libs文件夹复制到每个项目子文件夹。

我们会对所有核心库进行版本设置

例如,SVN如下所示:

/repo/lib1/trunk/

/repo/lib1/tags/1.0

/repo/lib1/tags/1.1

/回购/lib1/分行

这避免了中断BC或其他内容的情况,并且需要更新使用该库的其他三个项目

此外,我们还利用
svn:externals
将这些库链接到项目中

/repo/project1/tags/1.0

/repo/project1/trunk/library

输入以下内容:

lib1svn://host/repo/lib1/tags/1.1

。。。并提交更改

Project1本身也遵循约定(发布标签等)

根据您选择的语言,当然还有其他选择。让我知道你是否可以详细说明,我看看我是否可以扩展我的答案。但总而言之,事情就这么简单。不需要其他构建工具

我们直接从subversion(通过)进行所有部署。它基本上只是检查标签,然后完成。甚至允许热修复。如果您允许我自己拉皮条的话——我已经就这个主题写了很多文章(“从svn部署”)

svn propedit svn:externals /repo/project1/trunk/library