title: How to do hg revert --all with git?
body: <p>
  When using Mercurial it is possible to issue the following command:
  <code>
  hg revert --all --rev &lt;revision&gt;
  </code>
  The content of the working directory is set to the specified <code>&lt;revision&gt;</code> but you stay where you are in the tree (same parent, branch, etc).</p>
  
  <p>How to do that in git?<br>
  It should behave like <code>git reset --hard &lt;commit&gt;</code> without moving the branch pointer.</p>
  
  <p>TL;DR
  <code>
  git config alias.revert-all 'read-tree -um HEAD'
  git revert-all &lt;commit&gt;
  </code></p>
  
  <p>A comparison/test of all variants i found can be found here: <a href="http://git.io/vk9it" rel="nofollow">http://git.io/vk9it</a></p>