Let's have the following folder/file structure:
* f1
** test.txt
(so the file 'test.txt' is part of folder 'f1').
After renaming 'f1' to 'f2' (using svn rename) I get the following
error when executing:
>svn lock f2/test.txt
svn: Path '/f2/test.txt' doesn't exist in HEAD revision
Of course, it does not exist in the HEAD revision at that location,
because the folder is renamed. So, IMO it should lock the file
'test.txt' in path '/f1/test.txt' in the repository as I did not
commit my rename yet. How can I ensure locking in this case?
Regards,
Arjen Wisse
For that matter:
% svn add iota
% svn ci -mm iota
% svn mv iota kappa
% svn lock kappa
% svn ci --keep-locks -m rename ./
should also move the lock from iota to kappa. (currently it doesn't)
This seems reasonable to me. (so, +1 to filing a feature request bug)
And to answer your question: for now, lock the moved-from path.
Thanks for responding to this issue.
In fact what I was expecting is that when locking the file before
move, the lock being moved to the new location in the working copy as
well. However, that does not happen either (see defect
http://subversion.tigris.org/issues/show_bug.cgi?id=3525).
You suggested "lock the moved-from path", but how do I achieve that?
Does it mean that I require to lock it in the repository only?
Wouldn't that give a 'orphan' lock (I mean a lock only existing in the
repository, not in any working copy)?
Thanks & Regards,
Arjen Wisse
It does move the lock in the working copy, but a svn update after
moving gives a tree conflict because of the lock (that is the bug I
referred to).
Sorry for the confusion.
Regards,
Arjen Wisse
Sr. Software Engineer
awi...@cordys.com
www.cordys.com
T +31 (0)341 375388 • M +31 (0)612978034
CORDYS – Improving Business Operations
Yes, it might result in the lock being orphan or being present in
a different working copy. But I assumed your question was how to
work around 'svn mv foo bar; svn lock bar' erroring out --- and
I assumed the primary problem was to communicate the lock to others.
Remember that you can always jump in and help us fix the issues...
Unfortunately my C knowledge is quite rusty as well, so providing a
patch for this is not achievable for me right now. I will log a defect
for this.
Regards,
Arjen Wisse