如何在混合分支中使用svn externals进行多模块构建?

时间:2013-11-26 18:43:22

标签: svn svn-externals

我已阅读http://svnbook.red-bean.com/en/1.7/svn.advanced.externals.html,但我没有看到我需要的信息。它(几乎没有)谈论过propset,但没有谈论,这是我想要的。我有v1.8客户端。

说我在

中有以下模块层次结构
root URL = https://mySvnRepo

^/projects/trunk/module1
^/projects/trunk/module2
^/projects/trunk/module3

假设我将整个项目/ *树分支到

^/projects/branches/branch1/module1
^/projects/branches/branch1/module2
^/projects/branches/branch1/module3

...和

^/projects/branches/branch2/module1
^/projects/branches/branch2/module2
^/projects/branches/branch2/module3

如何使用svn externals,以便我的工作副本看起来像

/home/svn/projects/module1 from http://mySvnRepo/projects/trunk
/home/svn/projects/module2 from http://mySvnRepo/projects/branches/branch1
/home/svn/projects/module3 from http://mySvnRepo/projects/branches/branch2

例如。

我不需要讲课为什么我应该/不应该这样做。我只是想知道如何。如果我在脚下(或头部)射击自己现在好了。我只是想证明一个可能有效或无效的工作流程。谢谢!

1 个答案:

答案 0 :(得分:2)

将以下svn:externals定义放在名为externals.txt的文本文件中:

^/projects/trunk/module1 module1
^/projects/branches/branch1/module2 module2
^/projects/branches/branch2/module3 module3

在工作副本中,运行svn mkdir以在存储库的根目录下创建名为externals的目录。然后,使用此新目录的路径运行svn propset svn:externals --file externals.txt

在工作副本中从svn update运行的externals将检索外部目录。