On Thu, 26 Jan 2006, Nik Clayton wrote:
> Suppose your repo looks like this:
>
> Entry Created in
> /trunk 1
> /branches 1
>
> /trunk/foo 2
> /trunk/bar 2
>
> /branches/test1 3 Copied from trunk:2, WC -> WC
When you did this, I suspect that you had a "mixed" working copy, in
which /trunk was at revision 1 but /trunk/foo and /trunk/bar were at
revision 2. If you "svn update" in the working copy of /trunk just
before doing the WC -> WC copy, so that the whole thing is consistently
at revision 2, I think you'll get different results.
> /branches/test1/foo 3
> /branches/test1/bar 3
>
> /branches/test1/bar 4 Modified, and committed
>
> /branches/test2 5 Copied from trunk:4, URL -> URL
> /branches/test2/foo 5
> /branches/test2/bar 5
>
> /branches/test2/bar 6 Modified, and committed
[snip]
> This difference is also reflected in the 'svn log' output.
>
> With the WC -> WC copy you see this from 'svn log'
>
> ...
> Changed paths:
> A /branches/test1 (from /trunk:1)
> A /branches/test1/bar (from /trunk/bar:2)
> A /branches/test1/foo (from /trunk/foo:2)
> ...
See that it copied /trunk from revision 1, not from revision 2, so it
had to explicitly override foo and bar by copying them from revision 2.
> With the URL -> URL copy you see this:
>
> ...
> Changed paths:
> A /branches/test2 (from /trunk:4)
> ...
Here, copying /trunk from revision 4 implies copying /trunk/foo and
/trunk/bar from revision 4.
> Notice that there's no 'A' line for /branches/test2/bar or
> /branches/test2/foo.
Right. If you think that this sort of copy is "interesting" for the
purposes of your script, you'll have to detect it somehow. I don't know
the right APIs for that.
--apb (Alan Barrett)
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Sat Jan 28 18:16:37 2006