我在项目中有这个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所拥有的目录中吗?
答案 0 :(得分:1)
不,这是不可能的。阅读SVN红皮书中的"Externals Definition"部分。你会在那里找到以下通知:
外部定义的相对目标子目录不得 已存在于您或其他用户的系统上 - Subversion将创建 当它检出外部工作副本时。
但是,应该可以使用这样的外部定义:
Silex/product https://github.com/fabpot/Silex/trunk
Silex/vendor/Symfony/Component/BrowserKit https://github.com/symfony/BrowserKit/trunk
...
因此,svn:externals
创建的目录不会因创建其他外部目录而存在。
答案 1 :(得分:0)
我认为你想要做的是在fabpot / Silex / trunk repo中声明Component externals而不是这个repo。