0

I have this svn:external file in a project:

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

when I do a svn update in the external directory I get this svn error: svn: warning: Unable to lock 'Silex/vendor/Symfony/Component'

There is a way to checkout an svn:external into a directory owned by another svn:external?

Manuel
  • 836
  • 13
  • 30

2 Answers2

1

No, it is not possible. Read the section "Externals Definition" from the SVN Red Book. There you will find the following notice:

The relative target subdirectories of externals definitions must not already exist on your or other users' systems—Subversion will create them when it checks out the external working copy.

However, it should be possible to use an externals definition like that:

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

So your directories created by svn:externals do not exist by the creation of other externals directories.

mliebelt
  • 15,345
  • 7
  • 55
  • 92
0

I think what you'll want to do is declare the Component externals in the fabpot/Silex/trunk repo instead of this repo.

antiduh
  • 11,853
  • 4
  • 43
  • 66
  • the Silex project is hosted in github, not on my local svn server, I cannot modify this... – Manuel Jan 20 '12 at 19:36
  • 2
    I think it may be impossible, based on this tangentially related ticket from svn's tracker: http://subversion.tigris.org/issues/show_bug.cgi?id=1820 – antiduh Jan 20 '12 at 19:51