如何在分支和标记时处理来自subversion存储库的相对链接?

时间:2011-08-17 06:41:14

标签: svn relative-path

我们有一个项目,其中包含许多子项目,其中包含对其主干外部文件的相对链接,以及包含共享代码的并行项目,例如:

shared/trunk/functions.sh
subproject1/trunk/main.sh
subproject2/trunk/main.sh
..
subproject99/trunk/main.sh

子项目* / trunk / main.sh总是包含这样的代码:

# subprojectXX/trunk/main.sh
#!/bin/sh
source ../../shared/trunk/functions.sh

在这个项目的生命周期中,我们为每个子项目制作了发布标签,例如:

subproject1/tags/1.0.0
subproject1/tags/2.0.0

现在,我需要根据1.0.0标签创建一个分支,但如果我这样做

svn cp subproject1/tags/1.0.0 subproject1/branches/1.0.1

然后,共享功能的相对路径不再有效。

我很想做:

svn cp subproject1/tags/1.0.0 subproject1/trunk

然后在trunk中完成我的工作,然后在完成后将其复制到新标签,例如:

svn cp subproject1/trunk subproject1/tags/1.0.1

但是我担心这会引起各种各样的问题。我的直觉是否正确?

感谢有关svn:externals的建议,但我一直在寻找一种对(大)现有代码库不那么具有干扰性的解决方案。

谢谢,

PIX

1 个答案:

答案 0 :(得分:2)

您正在寻找svn:externals