Having done quite a bit of branching in centralized and distributed source control systems, I’m intimately aware of the additional (and I would say, unnecessary) pain centralized source control systems like Subversion and TFS bring to more powerful branching strategies used in teams today. Release branching, branch-per-feature and the like are very powerful tools of delivering software effectively, if you know how to properly set these things up.
However, merging has always been the linchpin in the branching story. Branching is easy, but because merging is the last step in a branching workflow, it’s the merging that determines the difficulty in branching. And merging in SVN, especially across branches, has always been….challenging. Along those lines, I saw an interesting proposal to fix Subversion merge.
An interesting approach, but I have a couple of other approaches that, in the long run, have a much better, brighter upside:
There, now your Subversion merge problems are fixed!