On Sun, Jul 07, 2013 at 10:56:03AM -0500, Frank Loeffler wrote:
> As to the original problem: is there any chance the 'nested' checkout
> could be made to work? Subversion could just ignore any upper-level .svn
> directories. What is done here is a fresh checkout. There is no need to
> check anything further up in the directory tree, especially not if it
> could make that checkout fail.

By design, there are many cases where the working copy code ends up
searching the directory hierarchy upwards for a wc.db database in
a .svn directory. Basically, any time the working copy management code
is entered, the database is looked up from a cache or searched on disk.
That code has many entry points internally, so there may be many cases
where checkout ends up scanning upwards. It could also be a small number
of cases. I'm not quite sure.

We'd have to figure out where checkout hits these problems, write test
cases for them, and special-case some checkout code paths to avoid
scanning upwards. This is tedious work. But if you found a volunteer
to do it I don't think we would reject such changes principle.

The only command that explicitly avoids scanning upwards right now
is the 'svn upgrade' command, to avoid upgrading enclosing working
copies. Internally, it has to tip-toe around a lot of corners for this :(

Reply via email to