Documentation / merge-options.txton commit hash-object: cleanup handling of command line options (8a2f5e5)
   1--summary::
   2        Show a diffstat at the end of the merge. The diffstat is also
   3        controlled by the configuration option merge.diffstat.
   4
   5-n, \--no-summary::
   6        Do not show diffstat at the end of the merge.
   7
   8--no-commit::
   9        Perform the merge but pretend the merge failed and do
  10        not autocommit, to give the user a chance to inspect and
  11        further tweak the merge result before committing.
  12
  13--commit::
  14        Perform the merge and commit the result. This option can
  15        be used to override --no-commit.
  16
  17--squash::
  18        Produce the working tree and index state as if a real
  19        merge happened, but do not actually make a commit or
  20        move the `HEAD`, nor record `$GIT_DIR/MERGE_HEAD` to
  21        cause the next `git commit` command to create a merge
  22        commit.  This allows you to create a single commit on
  23        top of the current branch whose effect is the same as
  24        merging another branch (or more in case of an octopus).
  25
  26--no-squash::
  27        Perform the merge and commit the result. This option can
  28        be used to override --squash.
  29
  30--no-ff::
  31        Generate a merge commit even if the merge resolved as a
  32        fast-forward.
  33
  34--ff::
  35        Do not generate a merge commit if the merge resolved as
  36        a fast-forward, only update the branch pointer. This is
  37        the default behavior of git-merge.
  38
  39-s <strategy>, \--strategy=<strategy>::
  40        Use the given merge strategy; can be supplied more than
  41        once to specify them in the order they should be tried.
  42        If there is no `-s` option, a built-in list of strategies
  43        is used instead (`git-merge-recursive` when merging a single
  44        head, `git-merge-octopus` otherwise).