How to manage your SVN branch for a website?

| | August 6, 2015

We have a web app and we are 10 developers working on it.

This is our current branching strategy :

  • A trunk branch connected to TeamCity for deploying in our Q&A server
  • A release branch connected to TeamCity for deploying to our live server.

Where we want to take our change from Q&A to live we to a revision merge and we select our revisions.

And this is working most of the times. But in bigger project we have a lot of conflict and we don’t really understand why.

I think the main problem behind these conflicts is the revision merging.

So I’d prefer a branch merging but I can’t find something that is appropriate to our situation.
A Branch per development effort wouldn’t resolve our problem :

  • we code in the “FeatureXXX” branch then merge it to the trunk. Q&A does its job. But what happens when we want to merge Q&A to Live ? revision merging again (because we don’t want to merge every Feature to the live branch only the XXX)!
  • we code in the featureXXX branch then merge it to live but this remove the Q&A stage …

Maybe there is a nice tool for merging revision without pain.

Env : c#.net , tortoisesvn, windows 7

One Response to “How to manage your SVN branch for a website?”

  1. Maybe it’s something absolutely new for you, but:

    You can merge one source into different targets any amount of time

    I.e after

    svn merge ^/branches/FeatureA ; commit -m "Merged FeatureA intro trunk" in Trunk-WC

    and QA-games

    svn merge ^/branches/FeatureA ; commit -m "FeatureA pass QA-tests" in ReleaseBranch-WC

    is perfectly valid

Leave a Reply