如何解决SVN:外部问题
我正在为我的项目使用SVN。我有两个名为repo1和repo2的存储库。在每个存储库中,我都在两个存储库中创建了一个名为branch1的分支。对于repo2的branch1中的一个称为module1的模块,已经定义了一个svn:external,并在Repo1中设置为branch1的module1 但现在我在repo1和repo2中创建了另一个名为branch2的分支,它是两个repo的branch1的副本。现在我在repo2的branch2中的module1仍然指向repo1中branch1的module1。但应参考repo1中branch2的模块1如何解决SVN:外部问题,svn,branch,Svn,Branch,我正在为我的项目使用SVN。我有两个名为repo1和repo2的存储库。在每个存储库中,我都在两个存储库中创建了一个名为branch1的分支。对于repo2的branch1中的一个称为module1的模块,已经定义了一个svn:external,并在Repo1中设置为branch1的module1 但现在我在repo1和repo2中创建了另一个名为branch2的分支,它是两个repo的branch1的副本。现在我在repo2的branch2中的module1仍然指向repo1中branch1的
当我们进行svn复制或svn分支时,是否有任何方法可以自动更改svn:externals?我认为这是不可能的。我认为svn没有办法知道您是否希望svn外部引用branch2或branch1
更新:这看起来很有用。上的权威资源显示了一些“相对”链接的可能性。但它们都不能以您想要的方式跨越存储库边界 这将留下以下选项:
- 将相关项目放入同一存储库和同一分支目录,并使用相对svn:external links,或
- 使用和/或破解类似于
的工具,其目的是处理svn:externals。此工具位于svncopy
中的subversion源代码树中contrib/client-side/svncopy
- 或者,您可以将分支/标记放入构建系统中
这些选项中没有一个是无约束的。不,svn无法自动完成您需要的操作。创建分支将复制svn中的整个文件夹及其所有外部引用
但是您可以编写自己的脚本来创建分支并更新外部 在我看来,这是一个特性,而不是一个bug
svn:externals
应该用于稳定的引用,因此它们通常甚至应该指向特定的修订版,而不是头部。您可以使用svn:externals
添加您想要阅读的内容吗?也许有另一个解决方案可能与SVN。为什么这两个存储库具有相同的结构,而repo2似乎应该遵循repo1的结构。