title: Differences between Git merge --squash and --no-commit
body: <p>As the title says, I am not really clear about the differences between a <code>git merge --squash</code> and a <code>git merge --no-commit</code>.</p>
  
  <p>As far as I understand the help page for <code>git merge</code>, both commands would leave me in an updated working-tree, where it is still possible to edit and then to do a final commit (or multiple commits).</p>
  
  <p>Could someone clarify the differences of those 2 options? When would I use one instead of the other?</p>