title: Branch from the past in mercurial
body: <p>I'm a single developer using Mercurial to create a program.  I have so far committed at every step of developing, and I have messed things up and want to work on something else.</p>
  
  <p>How shall I go to a previous state (ie. rollback) and then create a branch, maintaining the newer states?</p>
  
  <p>Does rollback ever delete anything?  Should that be all I do? Just rollback untill I'm at the place where I want, edit, then commit?  Will I be able to merge the changesets later, or at least look at them?  Of course I can just save this repository, rollback, and then create new changesets, then merge the two repositories?</p>
  
  <p>I'm new to SCM and of course DSCM, so be gentle :)</p>