Merge branch 'jk/archive-reachability' into HEAD

* jk/archive-reachability:
  t5000: drop tag to supposedly unreachable object
  archive: ignore blob objects when checking reachability
  list-objects: optimize "revs->blob_objects = 0" case
  upload-archive: restrict remote objects with reachability check
Merge branch 'jk/bitmaps' into HEAD

* jk/bitmaps: (22 commits)
  compat/mingw.h: Fix the MinGW and msvc builds
  pack-bitmap: implement optional name_hash cache
  t/perf: add tests for pack bitmaps
  t: add basic bitmap functionality tests
  count-objects: recognize .bitmap in garbage-checking
  repack: consider bitmaps when performing repacks
  repack: handle optional files created by pack-objects
  repack: turn exts array into array-of-struct
  repack: stop using magic number for ARRAY_SIZE(exts)
  pack-objects: implement bitmap writing
  rev-list: add bitmap mode to speed up object lists
  pack-objects: use bitmaps when packing objects
  pack-objects: split add_object_entry
  pack-bitmap: add support for bitmap indexes
  documentation: add documentation for the bitmap format
  ewah: compressed bitmap implementation
  compat: add endianness helpers
  sha1_file: export `git_open_noatime`
  revision: allow setting custom limiter function
  pack-objects: factor out name_hash
  ...
Merge branch 'jk/blame-tree' into HEAD

* jk/blame-tree:
  add blame-tree command
  combine-diff: zero memory used for callback filepairs
  teach tree-diff a max-depth parameter
  within_depth: fix return for empty path

Conflicts:
	diff-lib.c
Merge branch 'jk/builtin-attr' into HEAD

* jk/builtin-attr:
  attr: map builtin userdiff drivers to well-known extensions
Merge branch 'jk/cat-file-delta' into HEAD

* jk/cat-file-delta:
  cat-file: provide %(deltabase) batch format
  sha1_object_info_extended: provide delta base sha1s
Merge branch 'jk/child-cleanup' into HEAD

* jk/child-cleanup:
  send-pack: kill pack-objects helper on signal or exit
Merge branch 'jk/config-sources' into HEAD

* jk/config-sources:
  show sources of config options (WIP)
Merge branch 'jk/credential-interactive' into HEAD

* jk/credential-interactive:
  wip
Merge branch 'jk/credential-leak' into HEAD

* jk/credential-leak:
  Revert "prompt: clean up strbuf usage"
Merge branch 'jk/dumpstat' into HEAD

* jk/dumpstat:
  zeromq dumpstat implementation
  dumpstat-ify upload-pack
  dumpstat to fd
  dumpstat
Merge branch 'jk/filter-branch-example' into HEAD

* jk/filter-branch-example:
  docs/filter-branch: clean up newsubdir example
  update-index: add --clear option
Merge branch 'jk/follow-multiple' into HEAD

* jk/follow-multiple:
  log: allow multiple pathspecs with --follow

Conflicts:
	tree-diff.c
Merge branch 'jk/for-each-ref-contains' into HEAD

* jk/for-each-ref-contains: (23 commits)
  for-each-ref: add new features
  teach branch about --points-at
  tag: wire in ref-filter --merged
  for-each-ref: convert to ref-filter
  for-each-ref: update refinfo field names
  ref-filter: add util field
  ref-filter: learn about path-matching
  branch: convert to ref-filter
  ref-filter: add "with" alias to OPT_CONTAINS
  ref-filter: optionally resolve symrefs
  ref-filter: local/remote type matching
  ref-filter: implement --merged
  branch: drop unused items from ref_list
  branch: fix width computation
  branch: push 'current' check down to presentation layer
  branch: drop non-commit error reporting
  branch: roll show_detached HEAD into regular ref_list
  branch: move symref prefix-stripping to presentation layer
  branch: bump up get_head_description
  tag: convert to ref-filter
  ...
Merge branch 'jk/git-dir-debug' into HEAD

* jk/git-dir-debug:
  add GIT_TRACE_GITDIR
Merge branch 'jk/ident' into HEAD

* jk/ident:
  commit: give a hint when a commit message has been abandoned
Merge branch 'jk/ignore-have' into HEAD

* jk/ignore-have:
  receive-pack: respect receive.advertiseAlternates config
Merge branch 'jk/logallrefupdates' into HEAD

* jk/logallrefupdates:
  teach core.logallrefupdates an "always" mode
Merge branch 'jk/metapacks' into HEAD

* jk/metapacks:
  branch: turn off save_commit_buffer
  parse_object: use commit_metapack to parse commits
  commit_metapack: take const sha1
  avoid segfault on empty metapacks
  warning fixups for duys patch
  introduce a commit metapack
  commit: look up commit info in metapack
  add git-metapack command
  introduce a commit metapack
  introduce pack metadata cache files
  strbuf: add string-chomping functions
Merge branch 'jk/pager' into HEAD

* jk/pager:
  support pager.* for aliases
Merge branch 'jk/pager-subcommand' into HEAD

* jk/pager-subcommand:
  show git tag output in pager

Conflicts:
	builtin/tag.c