title: unmerge arbitrary merge in cvs/svn
body: <p>In CVS and/or SVN is there a way of unmerging an arbitrary merge (as in, not necessarily the last merge)</p>
  
  <p>Let's say tere are 4 branches: trunk, feature1, feature2, feature3.</p>
  
  <p>All feature* branches are merged into trunk one by one. Is there any way of cleanly 'unmerging' any of the feature branches?</p>
  
  <p>How would you go about doing this?</p>