fsck: git receive-pack: support excluding objects from fsck'ing
commitcd94c6f91ee92ffb0592696170fa84f426b839ab
authorJohannes Schindelin <johannes.schindelin@gmx.de>
Mon, 22 Jun 2015 15:27:18 +0000 (22 17:27 +0200)
committerJunio C Hamano <gitster@pobox.com>
Tue, 23 Jun 2015 21:27:37 +0000 (23 14:27 -0700)
tree1e437d580bb4b5087d248d69149350ebf14ed94b
parent02976bf856bc47ea2bcb9423cd13b6f69ce58929
fsck: git receive-pack: support excluding objects from fsck'ing

The optional new config option `receive.fsck.skipList` specifies the path
to a file listing the names, i.e. SHA-1s, one per line, of objects that
are to be ignored by `git receive-pack` when `receive.fsckObjects = true`.

This is extremely handy in case of legacy repositories where it would
cause more pain to change incorrect objects than to live with them
(e.g. a duplicate 'author' line in an early commit object).

The intended use case is for server administrators to inspect objects
that are reported by `git push` as being too problematic to enter the
repository, and to add the objects' SHA-1 to a (preferably sorted) file
when the objects are legitimate, i.e. when it is determined that those
problematic objects should be allowed to enter the server.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/config.txt
builtin/receive-pack.c
fsck.c
fsck.h
t/t5504-fetch-receive-strict.sh