How do you merge yours?
Now at some point during our development cycles when using a Source Control Management system we need to merge code back into the trunk ready for a release or for someone else to cut it. Now in GIT and Mercurial this tracking is done for you and in SVN you had to make notes of your merges, but 1.6 now has merge tracking.
If you haven't merged for a while, how do you go about it, as you might have many conflicts on top of conflicts, etc. My favored way to do it, is to of course do a merge regularly from trunk to my branch / fork; sometimes you don't have the time or you forget and a months gone past and there are over 100 commits that have gone through.
Do you then try to merge all 100 commits or do you do them in batches making it easier to fix conflicts as you go? It also helps to have the developers who made the changes to hand so that they can help with the conflicts.
Just today I hand't done a Merge for a month, whoops but their where only 10 commits in Trunk to worry about so it wasn't too bad but I know in the past I've had it really bad when I've left it for so long, would have thought I've learnt my lesson but I've got a thick head takes a few attempts to go in these days.
So the moral of the story is Merge Often, put an alert in your diary to do it weekly else your be in a right mess especially if you can't access that developer not more.

At the same time you commit/merge to trunk, merge the same hotfix to your dev branches (or, immediately when you next begin working on that branch), and you much reduce the problems. And of course, you can avoid conflicts by communicating with other developers - make sure you know who's working on what areas, so if you might overlap you can get together decide *in advance* what the best approach is. This makes it easier to change code in a way that wont create conflicts. Also, there's a good thorough explanation of a branching model here: http://nvie.com/git-model My own is a little different to that, but similar structure.