0

我在一个项目中有这个 svn:external 文件:

Silex https://github.com/fabpot/Silex/trunk
Silex/vendor/Symfony/Component/BrowserKit https://github.com/symfony/BrowserKit/trunk
Silex/vendor/Symfony/Component/ClassLoader https://github.com/symfony/ClassLoader/trunk
Silex/vendor/Symfony/Component/CssSelector https://github.com/symfony/CssSelector/trunk
Silex/vendor/Symfony/Component/DomCrawler https://github.com/symfony/DomCrawler/trunk

当我svn update在外部目录中执行时,我得到这个 svn 错误:svn: warning: Unable to lock 'Silex/vendor/Symfony/Component'

有一种方法可以将 svn:external 检出到另一个 svn:external 拥有的目录中?

4

2 回答 2

1

不,这是不可能的。阅读SVN 红皮书中的“外部定义”部分。在那里你会发现以下通知:

外部定义的相对目标子目录必须不存在于您或其他用户的系统上——Subversion 将在检出外部工作副本时创建它们。

但是,应该可以使用这样的外部定义:

 Silex/product https://github.com/fabpot/Silex/trunk
 Silex/vendor/Symfony/Component/BrowserKit https://github.com/symfony/BrowserKit/trunk
 ...

因此,您创建的目录svn:externals不会因创建其他外部目录而存在。

于 2012-01-21T12:59:02.220 回答
0

我认为您要做的是在 fabpot/Silex/trunk 存储库中声明组件外部,而不是此存储库。

于 2012-01-20T19:24:30.193 回答