[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: svn commit: r14800 - trunk/www

From: Philip Martin <philip_at_codematters.co.uk>
Date: 2005-05-23 17:46:31 CEST

Ben Collins-Sussman <sussman@tigris.org> writes:

> On May 23, 2005, at 4:30 AM, Peter N. Lundblad wrote:
>
>> No, the original description was better. what happens is that when you
>> lock a switched path, it will lock the wrong path in the FS. From my
>> testing, svn st -u behaves correctly in this respect.
>
> I'm confused; if I have a working copy of trunk, and I switch my
> 'www' directory to a branch, and then run 'svn lock www/faq.html',
> doesn't the proper URL still get locked? I thought that 'svn lock'
> goes by URL only, meaning that /branches/blah/www/faq.html would be
> locked in the repository.

The bug is in svn_client_lock. What goes wrong is that 'svn lock'
starts with the URL of the common ancestor and generates target URLs
by appending relative wc paths. So in your example lock works because

  URL of www + relative path of www/faq.html == URL of www/faq.html

Switch allows working copies where that relation is not true, and then
lock may operate on the wrong URL, it might even fail if the derived
URL doesn't exist. With multiple lock targets the problem gets worse,
the URL of the common ancestor of the wc paths might not be the common
ancestor of the URLs.

-- 
Philip Martin
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Mon May 23 17:47:33 2005

This is an archived mail posted to the Subversion Dev mailing list.