Changes that occurred in the past to trunk are now showing up again in the merge, and SVN (and CVS) get very confused. Look at the picture: Example Branch/Merge and Remerge. w=300" data-large-file="https://designbygravity.files.wordpress.com/2009/10/svn-problem1x6001.png? w=448&h=177 448w, https://designbygravity.files.wordpress.com/2009/10/svn-problem1x6001.png? w=150&h=59 150w, https://designbygravity.files.wordpress.com/2009/10/svn-problem1x6001.png? w=300&h=119 300w, https://designbygravity.files.wordpress.com/2009/10/svn-problem1x6001600w" sizes="(max-width: 450px) 100vw, 450px" /in which the modifications took place. So the order the merge tries to resolve is T1, T0, T4, T3.
" data-medium-file="https://designbygravity.files.wordpress.com/2009/10/svn-problem1x6001.png? But it is more awkward than that, because T0 and T4 are already committed to trunk, really it looks like you are applying T0, T4, T1, T3. But since changes are in terms of the previous state of the file being changed, T3’s modifications knew nothing about T4’s modifications, so you are applying modifications out of order, and things go boom. First of all, instead of one branch, we have three. Branching in SVN is fast enough not to care (in CVS though, ouch).
darthcamaro writes "Remember back in the day when we all used CVS?
Then we moved to SVN (subversion) but in the last three yrs or so everyone and their brother seems to have moved to Git, right?
This is really the first thing you need to figure out in a tree conflict scenario: What did people do to make this happen?
Conflicts are marked where none should exists, and other changes are just gone. Then second time you do it, depending on how attendant you are to start revisions, you may copy those changes again — this is slightly problematical.
You cry, you weep, you descend into alcohol and drug use, you watch old Star Trek reruns. Invariably people around you say “use GIT”; “use Mercurial”; “use Arch”; whatever. The killer is when you then merge all the changes from you branch to trunk — not only do these include a bunch of changes already made from trunk, your time line is now screwy. w=450" class="size-full wp-image-616" title="svn-problem1x600" src="https://designbygravity.files.wordpress.com/2009/10/svn-problem1x6001.png? w=450&h=177" alt="SVN Branch Merge Example 1 - Red for Trunk, Cyan for Branch." width="450" height="177" srcset="https://designbygravity.files.wordpress.com/2009/10/svn-problem1x6001.png? Let’s look at what happens when you get to T5 and want to merge your changes into trunk: The sequence looks like: T1 (already was in trunk, and was reapplied to the branch), T0 (from the merge at T2), T4 (because it was already in trunk), then T3.
Version 10.1 of Syncro SVN Client includes a variety of improvements and bug fixes.
The Create Patch operation was completely reworked and the Merge wizard now includes a pre-merge validation check.