gc: do not repack promisor packfiles
Teach gc to stop traversal at promisor objects, and to leave promisor packfiles alone. This has the effect of only repacking non-promisor packfiles, and preserves the distinction between promisor packfiles and non-promisor packfiles. Signed-off-by: Jonathan Tan <jonathantanmy@google.com> Signed-off-by: Jeff Hostetler <jeffhost@microsoft.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
df11e19648
commit
0c16cd499d
@ -255,6 +255,17 @@ a missing object is encountered. This is the default action.
|
||||
The form '--missing=allow-any' will allow object traversal to continue
|
||||
if a missing object is encountered. Missing objects will silently be
|
||||
omitted from the results.
|
||||
+
|
||||
The form '--missing=allow-promisor' is like 'allow-any', but will only
|
||||
allow object traversal to continue for EXPECTED promisor missing objects.
|
||||
Unexpected missing object will raise an error.
|
||||
|
||||
--exclude-promisor-objects::
|
||||
Omit objects that are known to be in the promisor remote. (This
|
||||
option has the purpose of operating only on locally created objects,
|
||||
so that when we repack, we still maintain a distinction between
|
||||
locally created objects [without .promisor] and objects from the
|
||||
promisor remote [with .promisor].) This is used with partial clone.
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
|
Reference in New Issue
Block a user