t1006: test cat-file --batch-all-objects with duplicates
commitaa2f5ef5004704cd01282a1f1a9f99459c9dc021
authorJeff King <peff@peff.net>
Fri, 10 Aug 2018 23:16:40 +0000 (10 19:16 -0400)
committerJunio C Hamano <gitster@pobox.com>
Mon, 13 Aug 2018 20:48:29 +0000 (13 13:48 -0700)
tree6f3bf42a4c73564137073295a4de1c8826574c27
parent736eb88fdc8a2dea4302114d2f74b580d0f83cfe
t1006: test cat-file --batch-all-objects with duplicates

The test for --batch-all-objects in t1006 covers a variety
of object storage situations, but one thing it doesn't cover
is that we avoid mentioning duplicate objects. We won't have
any because running "git repack -ad" will have packed them
all and deleted the loose ones.

This does work (because we sort and de-dup the output list),
but it's good to include it in our test. And doubly so for
when we add an unordered mode which has to de-dup in a
different way.

Note that we cannot just re-create one of the objects, as
Git will omit the write of an object that is already
present. However, we can create a new pack with one of the
objects, which forces the duplication.

One alternative would be to just use "git repack -a" instead
of "-ad". But then _every_ object would be duplicated as
loose and packed, and we might miss a bug that omits packed
objects (because we'd show their loose counterparts).

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t1006-cat-file.sh