This is an updated version of my previous patch [1], but without the list of promises. It is somewhat different now because fsck cannot just mark all promised objects as HAS_OBJ. This could be adapted and incorporated into patch sets that have objects missing from the local repo. I split this up into 4 patches so that you can see how the changes in fsck are being tested, but eventually these should probably be combined into 1 patch. [1] https://public-inbox.org/git/3420d9ae9ef86b78af1abe721891233e3f5865a2.1500508695.git.jonathantanmy@xxxxxxxxxx/ Jonathan Tan (4): environment, fsck: introduce lazyobject extension fsck: support refs pointing to lazy objects fsck: support referenced lazy objects fsck: support lazy objects as CLI argument Documentation/technical/repository-version.txt | 7 ++ builtin/fsck.c | 23 ++++++- cache.h | 2 + environment.c | 1 + setup.c | 7 +- t/t0410-lazy-object.sh | 95 ++++++++++++++++++++++++++ 6 files changed, 133 insertions(+), 2 deletions(-) create mode 100755 t/t0410-lazy-object.sh -- 2.14.0.rc0.400.g1c36432dff-goog