[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Differences between WC->WC copy, URL->URL copy, and $dirent->created_rev()

From: Alan Barrett <apb_at_cequrux.com>
Date: 2006-01-28 18:13:33 CET

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

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.