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

Re: Showing unmerged revisions within a range

From: Ben Reser <ben_at_reser.org>
Date: Fri, 07 Feb 2014 22:45:13 -0800

On 2/7/14, 4:28 PM, Kyle Sluder wrote:
> % svn mergeinfo --show-revs=eligible -r202859 ${Repository Root}/trunk
> r200832
> r200833
> r200836
> r200837
> [ ... snip ...]
>
> Notice that -r200832 is much earlier than the r202859 argument which was
> passed on the command line.
>
> My wild guess is that r200832 was merged to trunk sometime after
> r202859? I don't know. Searching the commit log history turns up no such
> results.

Unfortunately the -r option on mergeinfo in 1.7 doesn't do anything.
http://subversion.tigris.org/issues/show_bug.cgi?id=4199

This is fixed in 1.8.0 and newer. I'd suggest installing a build of 1.8.5:
https://subversion.apache.org/packages.html#osx

Also be careful mergeinfo needs a source and a target. You're only providing a
single argument there which will be treated as your source and your current
working copy will be used to determine the target.

What's not clear to me is why you're using the revision range the way you are.
 Your goal is to make sure anything that was merged to 4.0.2 was also merged to
4.0.x. So I'd probably do the following:

svn mergeinfo --show-revs=merged $REPO/trunk $REPO/branches/4.0.2 >
merged-4.0.2.txt
svn mergeinfo --show-revs=merged $REPO/trunk $REPO/branches/4.0.x >
merged-4.0.x.txt
diff -u 4.0.2.txt 4.0.x.txt

If you get + lines from the diff output that's changes that were merged to
4.0.x that weren't merged to 4.0.2 (which is likely ok). If you get - lines
then you've got changes merged to 4.0.2 that weren't merged to 4.0.x. That is
likely the things you were looking for. If 4.0.x and 4.0.2 weren't branched
off the same point then you'll have some spurious differences. For instance if
4.0.x has been made off a new revision of trunk than 4.0.2 was then you'll see
changes merged from trunk to 4.0.2 that are included since they were made
before the branch point, in which case you can safely ignore revisions that
exist before the branch point (you see to know how to find the branch point
with --stop-on-copy so I won't repeat that).

This might be a good use for the revision range on the mergeinfo to exclude the
changes merged to from 4.0.x but you appear to be trying to use the branch
point for 4.0.2 which isn't what you'd want. Unless of course 4.0.2 is newer
than 4.0.x but it doesn't sound like that's the case.

Finally, save yourself some trouble and learn the ^/ syntax:
https://subversion.apache.org/docs/release-notes/1.5.html#externals-relative-urls
Received on 2014-02-08 07:45:34 CET

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.