我最近正在使用一个subversion项目,该项目不仅从我正在使用的存储库中检出代码,而且还从不同服务器上的单独存储库中检出代码。
如何配置我的存储库来执行此操作?
我在Linux上使用的是subversion客户端版本1.3.2,我也可以在Windows中访问TortoiseSVN版本1.4.8(基于svn版本1.4.6)。
答案 0 :(得分:11)
请参阅svn:externals:
有时构建一个由多个不同签出组成的工作副本很有用。例如,您可能希望不同的子目录来自存储库中的不同位置,或者可能来自不同的存储库。你当然可以通过手工使用
svn checkout
来创建这种场景来创建你想要实现的嵌套工作副本结构。但是,如果这种布局对于使用存储库的每个人都很重要,那么每个其他用户都需要执行与您相同的结帐操作。幸运的是,Subversion支持外部定义。外部定义是本地目录到URL的映射,并且可能是版本化资源的特定修订。在Subversion中,使用
svn:externals
属性在组中声明外部定义。您可以使用svn propset
或svn propedit
创建或修改此媒体资源(请参阅the section called “Why Properties?”)。它可以在任何版本化目录上设置,其值是子目录的多行表(相对于设置该属性的版本化目录)和完全限定的绝对Subversion存储库URL ...
答案 1 :(得分:3)
尝试svn:externals
答案 2 :(得分:2)
我认为你应该看看svn:externals属性
答案 3 :(得分:2)
在documentation中搜索svn:externals属性。