Greg Stein <[email protected]> writes:
> I think the update should ask, "apply edits to A/f to your moved B/f?".
If the user says "no" then I think we would have to break the move and
convert it into a copy + delete. If the user copies A/f@3 to B/f and
then updates A/f to r4, it doesn't make sense for B/f to remain a move.
Note that the destination isn't always a working file. Consider a
working copy with 3 files A/Y/f, B/Y/f, C/Y/f. Move A to X, delete X/Y,
move B/Y to X/Y, delete X/Y/f, move C/Y/f to X/Y/f:
op-depth local-relpath presence moved-to moved-here
0 A normal
0 A/Y normal
0 A/Y/f normal
1 A deleted X
1 A/Y deleted
1 A/Y/f deleted
0 B normal
0 B/Y normal
0 B/Y/f normal
2 B/Y deleted X/Y
2 B/Y/f deleted
0 C normal
0 C/Y normal
0 C/Y/f normal
3 C/Y/f deleted X/Y/f
1 X normal 1
1 X/Y normal 1
1 X/Y/f normal 1
2 X/Y normal 1
2 X/Y/f normal 1
3 X/Y/f normal 1
So the file X/Y/f exists at op-depth 1, 2 and 3. An update that changes
B/Y/f needs to update the row X/Y/f at op-depth 2 although no change is
made to the working file.
--
uberSVN: Apache Subversion Made Easy
http://www.uberSVN.com