[Svnmerge] overzealous exclusion of reflective merges?

Reid Priedhorsky reid at umn.edu
Fri Jun 6 13:47:49 PDT 2008


All,

We have been having trouble with changes not being merged. Here is the 
steps and what I think is happening:

1. create branch A by copying TRUNK
2. make some changes on A and commit them
3. make some changes on TRUNK and commit them
4. merge these changes on A back to TRUNK:
    a. svnmerge merge
    b. some edits -- fix conflicts, maybe some other changes
    c. commit
5. make some more commits on TRUNK and commit them
6. merge TRUNK to A

But then A is missing some changes made on the trunk.

I _think_ the changes that are being missed are those that occurred in 
Step 4b. I hypothesize that svnmerge assumes in Step 6 that Commit 4c is 
reflective and omits it -- but it shouldn't be, since what I committed 
was not exactly what was merged. I could push the "other" changes to a 
second commit, but I have to fix the conflicts before Subversion will 
let me commit (and it seems reasonable that these conflict repairs would 
be useful on Branch A too).

In other words, I'm don't see how to guarantee that what svnmerge 
produces is exactly what I commit, but svnmerge assumes that it is in 
its reflection detection.

I am posting here as a smell test, to try to figure out what my 
misunderstanding is, or if there is a bug, or I need to explore more 
deeply (and how), or something else.

Any insight would be greatly appreciated.

Reid



More information about the Svnmerge mailing list