fixup! contrib/git-credential-gnome-keyring.c: small stylistic cleanups
Merge branch 'bc/doc-merge-no-op-revert' into jch

* bc/doc-merge-no-op-revert:
  Documentation: document pitfalls with 3-way merge
Merge branch 'fc/trivial' into jch

* fc/trivial:
  remote: fix status with branch...rebase=preserve
  fetch: add missing documentation
  t: trivial whitespace cleanups
  abspath: trivial style fix
Merge branch 'nd/remove-opt-boolean' into jch

* nd/remove-opt-boolean:
  parse-options: remove OPT_BOOLEAN
Merge branch 'jk/pull-rebase-using-fork-point' into jch

* jk/pull-rebase-using-fork-point:
  rebase: use reflog to find common base with upstream
  pull: use merge-base --fork-point when appropriate
Merge branch 'jk/rev-parse-double-dashes' into jch

"git rev-parse <revs> -- <paths>" did not implement the usual
disambiguation rules the commands in the "git log" family used in
the same way.

* jk/rev-parse-double-dashes:
  rev-parse: be more careful with munging arguments
  rev-parse: correctly diagnose revision errors before "--"
Merge branch 'jk/cat-file-regression-fix' into jch

* jk/cat-file-regression-fix:
  cat-file: handle --batch format with missing type/size
  cat-file: pass expand_data to print_object_or_die
Merge branch 'tg/diff-no-index-refactor' into jch

"git diff ../else/where/A ../else/where/B" when ../else/where is
clearly outside the repository, and "git diff --no-index A B", do
not have to look at the index at all, but we used to read the index
unconditionally.

* tg/diff-no-index-refactor:
  diff: don't read index when --no-index is given
  diff: move no-index detection to builtin/diff.c
### 2.0
Merge branch 'jc/push-2.0-default-to-simple' into jch

* jc/push-2.0-default-to-simple:
  push: switch default from "matching" to "simple"

# Conflicts:
# 	Documentation/config.txt
# 	Documentation/git-push.txt
# 	builtin/push.c
Merge branch 'jn/add-2.0-u-A-sans-pathspec' into jch

* jn/add-2.0-u-A-sans-pathspec:
  git add: -u/-A now affects the entire working tree

# Conflicts:
# 	builtin/add.c
Merge branch 'jc/add-2.0-ignore-removal' into jch

Updated endgame for "git add <pathspec>" that defaults to "--all"
aka "--no-ignore-removal".

* jc/add-2.0-ignore-removal:
  git add <pathspec>... defaults to "-A"

# Conflicts:
# 	builtin/add.c
Merge branch 'jc/core-checkstat-2.0' into jch

* jc/core-checkstat-2.0:
  core.statinfo: remove as promised in Git 2.0
Merge branch 'gj/push-more-verbose-advice' into jch

Explain 'simple' and 'matching' in "git push" advice message; the
topmost patch is a rebase of jc/push-2.0-default-to-simple on top
of it.

* gj/push-more-verbose-advice:
  push: switch default from "matching" to "simple"
Merge branch 'jc/hold-diff-remove-q-synonym-for-no-deletion' into jch

* jc/hold-diff-remove-q-synonym-for-no-deletion:
  diff: remove "diff-files -q" in a version of Git in a distant future

# Conflicts:
# 	diff-no-index.c
# 	diff.c
### match next
Merge branch 'js/gnome-keyring' into jch

Style fix.

* js/gnome-keyring:
  fixup! contrib/git-credential-gnome-keyring.c: small stylistic cleanups
  contrib/git-credential-gnome-keyring.c: small stylistic cleanups
Merge branch 'jn/git-gui-chmod+x' into jch

* jn/git-gui-chmod+x:
  git-gui: chmod +x po2msg, windows/git-gui.sh
Merge branch 'jn/gitk-chmod+x' into jch

* jn/gitk-chmod+x:
  gitk: chmod +x po2msg
Merge branch 'cc/starts-n-ends-with-endgame' into jch

Endgame for the above topic, that needs to be evil-merged with
other topics that introduce new uses of prefix/suffix-cmp
functions.

* cc/starts-n-ends-with-endgame:
  strbuf: remove prefixcmp() and suffixcmp()