Reproduction recipe:
[[[
$ svnadmin create repo
$ svn co file://`pwd`/repo wc
Checked out revision 0.
$ cd wc
/Users/breser/copy-lock/wc
echo foo > foo
$ svn add foo
A foo
$ svn ci -mm
Adding foo
Transmitting file data .
Committed revision 1.
$ svn lock foo
'foo' locked by user 'breser'.
$ svnadmin lslocks ../repo
Path: /foo
UUID Token: opaquelocktoken:9895d3c3-7d41-419f-b9b3-87d4b6b1de23
Owner: breser
Created: 2013-10-03 08:36:25 -0400 (Thu, 03 Oct 2013)
Expires:
Comment (0 lines):
$ svn cp foo bar
A bar
$ svn ci -mm
Adding bar
Committed revision 2.
$ svnadmin lslocks ../repo
]]]
Using a separate working copy to do the copy of the locked file doesn't free the lock.
I don't think this makes sense. Removing locks automatically on commit really only makes sense when
you've made a change to the locked file.
I set the subcomponent to libsvn_repos, but I'm not sure what code is responsible for this since I haven't
bothered to dig into this much.