On Jun 4, 2010, at 04:24, Stefan Sperling wrote:
> On Thu, Jun 03, 2010 at 04:58:23PM -0500, Russell E Glaue wrote:
>> If you accidentally put the at symbol in a directory name like this:
>> 
>> svn copy http://svn.domain.com/repos/trunk/my...@49 
>> http://svn.domain.com/repos
>> /trunk/my...@head -m "bring back rev 49 from the dead"
>> 
>> You end up with the following path in HEAD: '/trunk/my...@head/'
>> Where '@HEAD' is part of the actual directory name.
> 
> Which version of Subversion were you using?
> I bet this copy won't produce the same result with 1.6.5 or greater.
> 
> The @ character within the basename of a path is always special to svn.
> It means "what follows is a peg revision".
> See http://svnbook.red-bean.com/nightly/en/svn.advanced.pegrevs.html
> 
> Contrary to what the book describes, versions of Subversion before 1.6.5
> were inconsistent about parsing peg revisions on the command line.
> In your case, the copy command did not treat the @ in a special way,
> but the delete command did.
> In 1.6.5 this was fixed so that all commands treat the @ in a special way.

I reproduced Russell's problem using Subversion 1.6.11 on Mac OS X 10.6.3 (svn 
copying to "my...@head" did create an item in the repo called "my...@head"), 
and using "svn rm my...@head@" allowed him to remove the offending item.


Reply via email to