Merge branch 'jh/fsck-promisors'
authorJunio C Hamano <gitster@pobox.com>
Tue, 13 Feb 2018 21:39:03 +0000 (13:39 -0800)
committerJunio C Hamano <gitster@pobox.com>
Tue, 13 Feb 2018 21:39:03 +0000 (13:39 -0800)
commitf3d618d2bf4099abe99babc8b56dcd483c5eec71
tree3e906f2c4a72698cf5865016b5d652047d8260a0
parented1b87ef910fe38dfb9cf044f5c946adfab0c5e3
parent0c16cd499dee09b7fc6dd10cb6a476e96c147ef6
Merge branch 'jh/fsck-promisors'

In preparation for implementing narrow/partial clone, the machinery
for checking object connectivity used by gc and fsck has been
taught that a missing object is OK when it is referenced by a
packfile specially marked as coming from trusted repository that
promises to make them available on-demand and lazily.

* jh/fsck-promisors:
  gc: do not repack promisor packfiles
  rev-list: support termination at promisor objects
  sha1_file: support lazily fetching missing objects
  introduce fetch-object: fetch one promisor object
  index-pack: refactor writing of .keep files
  fsck: support promisor objects as CLI argument
  fsck: support referenced promisor objects
  fsck: support refs pointing to promisor objects
  fsck: introduce partialclone extension
  extension.partialclone: introduce partial clone extension
18 files changed:
Documentation/rev-list-options.txt
Makefile
builtin/fsck.c
builtin/index-pack.c
builtin/pack-objects.c
builtin/prune.c
builtin/rev-list.c
cache.h
environment.c
fetch-pack.c
list-objects.c
object.c
revision.c
revision.h
setup.c
sha1_file.c
transport.c
transport.h