Merge branch 'jk/grep-tell-run-command-to-cd-when-running-pager'

* jk/grep-tell-run-command-to-cd-when-running-pager:
  grep: use run-command's "dir" option for --open-files-in-pager
Merge branch 'tg/tag-state-tag-name-in-editor-hints'

* tg/tag-state-tag-name-in-editor-hints:
  builtin/tag.c: show tag name to hint in the message editor
Merge branch 'rs/reflog-exists'

* rs/reflog-exists:
  checkout.c: use ref_exists instead of file_exist
  refs.c: add new functions reflog_exists and delete_reflog
Merge branch 'dt/merge-recursive-case-insensitive'

On a case insensitive filesystem, merge-recursive incorrectly
deleted the file that is to be renamed to a name that is the same
except for case differences.

* dt/merge-recursive-case-insensitive:
  mv: allow renaming to fix case on case insensitive filesystems
  merge-recursive.c: fix case-changing merge bug
Merge branch 'jn/contrib-remove-diffall'

Spring cleaning of contrib/.

* jn/contrib-remove-diffall:
  contrib: remove git-diffall
Merge branch 'jn/contrib-remove-vim'

Spring cleaning of contrib/.

* jn/contrib-remove-vim:
  contrib: remove vim support instructions
Merge branch 'wg/svn-fe-style-fixes'

* wg/svn-fe-style-fixes:
  svn-fe: conform to pep8
Merge branch 'dk/blame-reorg'

"git blame" has been optimized greatly by reorganising the data
structure that is used to keep track of the work to be done, thanks
to David Karstrup <dak@gnu.org>.

* dk/blame-reorg:
  blame: large-scale performance rewrite
Merge branch 'sk/submodules-absolute-path-on-windows'

* sk/submodules-absolute-path-on-windows:
  Revert "submodules: fix ambiguous absolute paths under Windows"
Merge branch 'bc/blame-crlf-test'

If a file contained CRLF line endings in a repository with
core.autocrlf=input, then blame always marked lines as "Not
Committed Yet", even if they were unmodified.

* bc/blame-crlf-test:
  blame: correctly handle files regardless of autocrlf
Merge branch 'jk/index-pack-report-missing'

* jk/index-pack-report-missing:
  index-pack: distinguish missing objects from type errors
Merge branch 'tb/unicode-6.3-zero-width'

Update the logic to compute the display width needed for utf8
strings and allow us to more easily maintain the tables used in
that logic.

We may want to let the users choose if codepoints with ambiguous
widths are treated as a double or single width in a follow-up patch.

* tb/unicode-6.3-zero-width:
  utf8: make it easier to auto-update git_wcwidth()
  utf8.c: use a table for double_width
Merge branch 'wk/doc-clarify-upstream'

* wk/doc-clarify-upstream:
  Documentation: mention config sources for @{upstream}
Merge branch 'jd/subtree'

* jd/subtree:
  contrib/subtree: allow adding an annotated tag
  contrib/subtree/Makefile: clean up rule for "clean"
  contrib/subtree/Makefile: clean up rules to generate documentation
  contrib/subtree/Makefile: s/libexecdir/gitexecdir/
  contrib/subtree/Makefile: use GIT-VERSION-FILE
  contrib/subtree/Makefile: scrap unused $(gitdir)
Merge branch 'sk/spawn-less-case-insensitively-from-grep-O-i'

* sk/spawn-less-case-insensitively-from-grep-O-i:
  git grep -O -i: if the pager is 'less', pass the '-I' option
Merge branch 'mk/show-s-no-extra-blank-line-for-merges'

* mk/show-s-no-extra-blank-line-for-merges:
  git-show: fix 'git show -s' to not add extra terminator after merge commit
Merge branch 'mt/rebase-i-keep-empty-test'

* mt/rebase-i-keep-empty-test:
  rebase --keep-empty -i: add test
Merge branch 'nd/status-auto-comment-char'

* nd/status-auto-comment-char:
  commit: allow core.commentChar=auto for character auto selection
  config: be strict on core.commentChar
Merge branch 'jc/coding-guidelines'

* jc/coding-guidelines:
  CodingGuidelines: avoid "test <cond> -a/-o <cond>"
  CodingGuidelines: on splitting a long line
  CodingGuidelines: on comparison
  CodingGuidelines: do not call the conditional statement "if()"
  CodingGuidelines: give an example for shell function preamble
  CodingGuidelines: give an example for control statements
  CodingGuidelines: give an example for redirection
  CodingGuidelines: give an example for case/esac statement
  CodingGuidelines: once it is in, it is not worth the code churn
Merge branch 'jj/command-line-adjective'

* jj/command-line-adjective:
  Documentation: use "command-line" when used as a compound adjective, and fix other minor grammatical issues