Teng Long <dyroneteng@xxxxxxxxx> writes: > +++ b/Documentation/technical/packfile-uri.txt > @@ -35,13 +35,16 @@ include some sort of non-trivial implementation in the Minimum Viable Product, > at least so that we can test the client. > > This is the implementation: a feature, marked experimental, that allows the > +server to be configured by one or more entries with the format: > + > + uploadpack.excludeobject=<object-hash> <recursively> <pack-hash> <uri> > + > +Value <object-hash> is the key of entry, and the object type can be a blob > +or commit. Whenever the list of objects to be sent is assembled, all such > +objects are excluded, replaced with URIs. At the same time, for the old > +configuration `uploadpack.blobPackfileUri=<sha1> <pack-hash> <uri>` is > +still compatible for now, but this configuration only supports the > +exclusion of blob objects. Do not hint deprecation and future removal with "still" and "for now", before seeing a concensus that it should be deprecated and removed. The new thing, <recursively>, deserves some explanation. What are the acceptable values (yes/no? spatial/time/both? infinitely/limited?) and what do these values mean? Why is this limited to only <blob> and <commit>? There isn't a fundamental reason why I shouldn't be able to say "v2.32.0" instead of ebf3c04b262aa27fbb97f8a0156c2347fecafafb (or "v2.32.0~0") to say "I want anything reachable from v2.32.0 (in other words, that version and everything before it)", is there? For that matter, "everything reachable from this tree object" may also be a reasonable way to specify which set of objects are offloaded to an out-of-band URI. Thanks.