title: What exactly does git's "rebase --preserve-merges" do (and why?)
body: <p>Git's <a href="https://git-scm.com/docs/git-rebase">documentation for the <code>rebase</code> command</a> is quite brief:</p>
  
  <pre><code>--preserve-merges
      Instead of ignoring merges, try to recreate them.
  
  This uses the --interactive machinery internally, but combining it
  with the --interactive option explicitly is generally not a good idea
  unless you know what you are doing (see BUGS below).
  </code></pre>
  
  <p>So what actually happens when you use <code>--preserve-merges</code>? How does it differ from the default behavior (without that flag)? What does it mean to "recreate" a merge, etc.</p>