tags:

views:

44

answers:

0

I'm trying to use Subversion's log --use-merge-history feature. When you view a revision that resulted from a merge, this is supposed to show you the revisions that were part of that merge. But sometimes, it shows me ALL revisions.

This is what I did:

  • Created revision 101, by copying trunk at version 100 to branches/br1.
  • Committed revisions 102 and 103 to br1.
  • Merged from trunk into br1, creating revision 104.
  • Did a reintegrate merge from br1 into trunk, creating revision 105.
  • Ran svn log -r 105 --use-merge-history /trunk.

This showed me 105, and all the revisions that were merged via 105. This included 104, 103, 102, and 101 (as I would expect), but then it continued showing the entire history of trunk.

At revision 105, trunk's mergeinfo property looks like:

/branches/br0:80-90
/branches/br1:100-104

At revision 104, it looked like:

/branches/br0:80-90
/trunk:1-79

Why would it think that I just merged all revisions of br1, rather than just 100-104? Could it be trying to follow the history of br0 (an older branch that was already merged into trunk)?

I tried passing --limit 1 and --stop-on-copy, but they didn't make any difference.