title: How to do a fast-forward merge on GitHub?
body: <p>So one of my colleagues attempted to merge a branch using GitHub's &quot;merge via fast-forward&quot; option in the web-interface, to keep the history clean from bogus merge commits (the <code>master</code> branch into which they merged, had not progressed since the to-be merged feature-branch was started).</p>
  <p>Funnily enough, this didn't work as expected: all the commits got new commit-hashes.</p>
  <p>On closer inspection, it seems that merge-option is actually called &quot;Rebase and Merge&quot; and it really seems to do the equivalent of <code>git rebase --force</code>, changing the <em>Committer</em> information (both the person who did the merge, and the time when the merge happened).</p>
  <p>It took me quite a while to confirm my suspicion that this is indeed the case, as I couldn't make the cmdline tools to show me the difference between the original commits on the feature branch and the seemingly-identical commits (with different hashes) on the master branch.
  (In the end, I found that <code>gitk</code> shows both Committer and Author of a commit; in the <em>very</em> end I found that I can also get this information via <code>git log --pretty=raw</code>)</p>
  <p>So:</p>
  <ul>
  <li>Is there a way to do a &quot;proper&quot; fast-forward merge (<code>git rebase</code> <strong>without</strong> the <strike><code>--force</code></strike> option) via GitHub's web-interface?</li>
  <li>If not: why? (I can see merits in accountability; e.g. it answers the question who is responsible that a given piece of code ended up in <code>master</code>)</li>
  </ul>