I'm pretty sure this is a bug, but wanted to check here first before filing a 
ticket.

Normally, if you accidentally use a local versioned file path as a log message, 
you will get an error:

  $ svn --version
  svn, version 1.10.0 (r1827917)
  [...]
  $ svn commit -m locally_versioned_path
  svn: E205005: The log message is a pathname (was -F intended?); use 
'--force-log' to override
  $

It doesn't matter whether 'locally_versioned_path' is modified or not.  It 
doesn't have to be part of the commit; the mere fact that it's a path under 
version control is why SVN decides it likely wasn't intended to be the log 
message.

Now try this:

  $ svn status
  $ svn rm locally_versioned_path
  D         locally_versioned_path
  $ svn commit -m locally_versioned_path
  Deleting       locally_versioned_path
  Committing transaction...
  Committed revision 1729.
  $

Oops :-).

Because the *working file* is no longer there, Subversion fails to decide that 
the path likely wasn't intended to be the log message -- even though obviously 
Subversion should come to the same conclusion here that it would have come to 
if the path were not locally deleted.

If we agree this is a bug, I'll file it.  Maybe I'll even fix it -- no 
promises; depends how much I'm able to sleep on the plane this weekend :-).  In 
any case, I first wanted to make sure there is consensus that this is a bug.  
Do we agree?

Best regards,
-Karl

Reply via email to