title: Merging selected changes
body: <p>[I tagged my question for mercurial but, really, I'm asking a conceptual question that applies to other source control apps, too.] Suppose you have a folder with application source code under version control; call it the main trunk. I clone the repository and start modifying the code, working on a new version of the program, committing revision after revision that will never be part of the main trunk. </p>
  
  <p>Then one day, working on revision 23, I find a bug. </p>
  
  <p>I commit it, as revision 24. </p>
  
  <p>I want you to have my bug fix, without all the other changes I've made. What's the general procedure for pushing or merging just revision 24's code, the bug fix, back to the main trunk?</p>