title: Moving from SVN to HG : branching and backup
body: <p>My company runs svn right now and we are very familiar with it. However, because we do a lot of concurrent development, merging can become very complicated.. We've been playing with hg and we really like the ability to make fast and effective clones on a per-feature basis. </p>
  
  <p>We've got two main issues we'd like to resolve before we move to hg:</p>
  
  <ul>
  <li><strong>Branches for erstwhile svn users</strong> I'm familiar with the "4 ways to branch in Mercurial" as set out in <a href="http://stevelosh.com/blog/2009/08/a-guide-to-branching-in-mercurial/" rel="nofollow noreferrer">Steve Losh's article</a>. We think we should "materialise" the branches because I think the dev team will find this the most straightforward way of migrating from svn. Consequently I guess we should follow the "branching with clones" model which means that separate clones for branches are made on the server. While this means that every clone/branch needs to be made on the server and published separately, this isn't too much of an issue for us as we are used to checking out svn branches which come down as separate copies. I'm worried, however, that merging changes and following history may become difficult between branches in this model. </li>
  <li><strong>Backup</strong> If programmers in our team make local clones of a branch, how do they backup the local clone? We're used to seeing svn commit messages like this on a feature branch "Interim commit: db function not yet working". I can't see a way of doing this easily in hg.</li>
  </ul>
  
  <p>Advice gratefully received. Rory</p>