Documentation / merge-options.txton commit require-work-tree wants more than what its name says (e2eb527)
   1--commit::
   2--no-commit::
   3        Perform the merge and commit the result. This option can
   4        be used to override --no-commit.
   5+
   6With --no-commit perform the merge but pretend the merge
   7failed and do not autocommit, to give the user a chance to
   8inspect and further tweak the merge result before committing.
   9
  10--ff::
  11--no-ff::
  12        Do not generate a merge commit if the merge resolved as
  13        a fast-forward, only update the branch pointer. This is
  14        the default behavior of git-merge.
  15+
  16With --no-ff Generate a merge commit even if the merge
  17resolved as a fast-forward.
  18
  19--log[=<n>]::
  20--no-log::
  21        In addition to branch names, populate the log message with
  22        one-line descriptions from at most <n> actual commits that are being
  23        merged. See also linkgit:git-fmt-merge-msg[1].
  24+
  25With --no-log do not list one-line descriptions from the
  26actual commits being merged.
  27
  28
  29--stat::
  30-n::
  31--no-stat::
  32        Show a diffstat at the end of the merge. The diffstat is also
  33        controlled by the configuration option merge.stat.
  34+
  35With -n or --no-stat do not show a diffstat at the end of the
  36merge.
  37
  38--squash::
  39--no-squash::
  40        Produce the working tree and index state as if a real
  41        merge happened (except for the merge information),
  42        but do not actually make a commit or
  43        move the `HEAD`, nor record `$GIT_DIR/MERGE_HEAD` to
  44        cause the next `git commit` command to create a merge
  45        commit.  This allows you to create a single commit on
  46        top of the current branch whose effect is the same as
  47        merging another branch (or more in case of an octopus).
  48+
  49With --no-squash perform the merge and commit the result. This
  50option can be used to override --squash.
  51
  52--ff-only::
  53        Refuse to merge and exit with a non-zero status unless the
  54        current `HEAD` is already up-to-date or the merge can be
  55        resolved as a fast-forward.
  56
  57-s <strategy>::
  58--strategy=<strategy>::
  59        Use the given merge strategy; can be supplied more than
  60        once to specify them in the order they should be tried.
  61        If there is no `-s` option, a built-in list of strategies
  62        is used instead ('git merge-recursive' when merging a single
  63        head, 'git merge-octopus' otherwise).
  64
  65-X <option>::
  66--strategy-option=<option>::
  67        Pass merge strategy specific option through to the merge
  68        strategy.
  69
  70--summary::
  71--no-summary::
  72        Synonyms to --stat and --no-stat; these are deprecated and will be
  73        removed in the future.
  74
  75ifndef::git-pull[]
  76-q::
  77--quiet::
  78        Operate quietly.
  79
  80-v::
  81--verbose::
  82        Be verbose.
  83endif::git-pull[]