subversion-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Florin Avram <>
Subject Re: Wrong state for SWITCHED items
Date Thu, 04 Apr 2013 13:09:31 GMT

Thank you for your prompt reply.

The exact behavior (just tested on my own):
SVN 1.6:
switched file
     - delete: works;
     - status: reported correctly (D + S);
     - commit: works (removes item from the branch URL, not from the parent directory URL);

switched directory
     - delete: works;
     - status: reported wrong if directly on the switched directory ("svn status switchedDir"
reports as D only), but works fine if requested on parent dir ("svn status ." reports "switchedDir"
as D + S);
     - commit: works fine;

SVN 1.7:
switched file
     - delete: works;
     - status: loses S state, only D reported (both if "svn status" on file or on parent);
     - commit: same as SVN 1.6 for file;

switched directory
     - delete:not working (previously mentioned error);

I don't know how things work for SVN 1.8, since I do not test it until officially available.

At this point, I assume it would be safer to not allow delete on switched items (especially
if the switched status is lost) since the user might not be aware that commits something to
another repository location.
But, this will prevent a user from replacing the switched item (delete + add).

Best Regards,

On 04.04.2013 15:19, Bert Huijben wrote:
>> -----Original Message-----
>> From: MARTIN PHILIP [] On Behalf Of
>> Philip Martin
>> Sent: donderdag 4 april 2013 12:42
>> To: Florin Avram
>> Cc:
>> Subject: Re: Wrong state for SWITCHED items
>> Florin Avram <> writes:
>>> Two things I've noticed:
>>> 1) svn status switched.txt   => file reported as switched
>>> svn delete --keep-local switched.txt
>>> svn status switched.txt => the file is reported as DELETED, but not as
>>> SWITCHED anymore (although "svn info" indicates the correct URL from
>>> the branch)
>> I think that's a bug.  In particular while info shows the switched URL
>> commit will delete the unswitched URL.  Combining switch with delete is
>> always a problem, for example this old bug:
>>> 2) Also, why can I delete a switched file, but I cannot delete a
>>> switched directory?!
>>> cd wcRootDir
>>> svn delete --keep-local switchedDirectory => svn: E155005: No
>>> write-lock in 'D:\path\to\wcRootDir'
>> That's a bug as well.  Preventing the delete of a switched node may be a
>> good idea but the error message should be better.
> This error is caused by our 'anchor' rules. A switched directory doesn't use
> its parent directory for many operations. (For a file it must always use the
> directory). In this case we obtain the lock for the to be deleted node only,
> while we delete a child from its ancestor.
> Is this 1.6 or 1.7?
> 	Bert

View raw message