Subversion, merger

First, let me preface by saying that I have asked similar questions here before, and never received a good answer that solved my lack of knowledge / problems.

First, let me start by suggesting a branching strategy. This is what we have at work, and I am happy to hear the comments in the reverse order, and why it sucks. But understand that this usually works for us.

We have 1 product. For the sake of this example, let's call it "PRODUCT". We are launching 2 parallel development cycles. A weekly maintenance cycle where we correct non-pressing errors and a two-week sprint. There are two branches created from a trunk called "Sprint" and "Maintenance" (the shocking choice of name I know!). In addition, for urgent / blocking problems, corrections are made directly in the trunk and pushed out to production after testing.

9 times out of 10, when I try to reintegrate the sprint or service back into the trunk, I get LOTS of conflicts. In files that never worked in one of the branches. This leads to a lot of manual merging, which sucks and leads to more problems.

So, I will output the command: svn merge --reintegrate http: // repo / Sprint and while some files will be updated, I will have conflicts with files that are EXACTLY the same (via WinMerge). I do not know what causes these conflicts.

How can I end these ridiculous conflicts?

+3
source share
3 answers

One answer is to use many small feature branches, rather than two fixed branches. Your problem is that the changes in your fixed branches are merged, and then you make some changes in the fixed branches, and these changes conflict with the first merge, even if they do not.

, , DVCS, Mercurial git, , SVN.

+2

Timpani Software MergeMagician. , Subversion ( Microsoft TFS). / , .

, , MM - .

FYI, . , , - - Merge Fairy, , Merge Fairy .

http://www.timpanisoftware.com.

+1

You probably just need to merge with the trunk back to your branches instead of creating new branches ... something like this:

Trunk --- Create Sprint

--- Merge Sprint into Trunk --- Merge Trunk into Sprint

0
source

All Articles