2012/5/28 Philip Martin <philip_at_codematters.co.uk>:
> Philip Martin <philip.martin_at_wandisco.com> writes:
>
>>> 2. now locally exclude subdirectory b from update (svn update b
>>> --set-depth=exclude), which removes versioned subdirectory b from the
>>> local working copy
>>> 3. change the local svn:externals property set on a to become a
>>> directory external:
>>> /b b
>>
>> Here you are changing the svn:externals so that the external node is at
>> the same location as a versioned directory. When you try to checkout
>> the external and the versioned directory will obstruct each other:
>>
>> $ svnadmin create repo
>> $ svn mkdir -mm file://`pwd`/repo/A
>> $ svn mkdir -mm file://`pwd`/repo/B
>> $ svn co file://`pwd`/repo wc
>> $ svn ps svn:externals '^/B B' wc/A
>> $ svn ci -mm wc
>>
>> That's a very nomal svn:externals setup. Now add ^/A/B and try and
>> checkout:
>>
>> $ svn mkdir -mm file://`pwd`/repo/A/B
>> $ rm -rf wc
>> $ svn co file://`pwd`/repo wc
>> $ svn st wc
>> S wc/A/B
>>
>> wc/A/B should not be switched.
>
> That's issue 4085:
>
> http://subversion.tigris.org/issues/show_bug.cgi?id=4085
>
> --
> Philip
Ok, thanks a lot for the replies, I wasn't aware that an external
occurring in a directory with name corresponding to an excluded
versioned subdirectory was not supported (as it did work in 1.6), but
it is a bit a trick anyway.
Sofie
Received on 2012-05-28 19:59:51 CEST