- uploadpack.hideRefs
-
This variable is the same as
transfer.hideRefs
, but applies only toupload-pack
(and so affects only fetches, not pushes). An attempt to fetch a hidden ref bygit fetch
will fail. See alsouploadpack.allowTipSHA1InWant
. - uploadpack.allowTipSHA1InWant
-
When
uploadpack.hideRefs
is in effect, allowupload-pack
to accept a fetch request that asks for an object at the tip of a hidden ref (by default, such a request is rejected). See alsouploadpack.hideRefs
. Even if this is false, a client may be able to steal objects via the techniques described in the "SECURITY" section of the linkgit:gitnamespaces[7] man page; it’s best to keep private data in a separate repository. - uploadpack.allowReachableSHA1InWant
-
Allow
upload-pack
to accept a fetch request that asks for an object that is reachable from any ref tip. However, note that calculating object reachability is computationally expensive. Defaults tofalse
. Even if this is false, a client may be able to steal objects via the techniques described in the "SECURITY" section of the linkgit:gitnamespaces[7] man page; it’s best to keep private data in a separate repository. - uploadpack.allowAnySHA1InWant
-
Allow
upload-pack
to accept a fetch request that asks for any object at all. It impliesuploadpack.allowTipSHA1InWant
anduploadpack.allowReachableSHA1InWant
. If set totrue
it will enable both of them, it set tofalse
it will disable both of them. By default not set. - uploadpack.keepAlive
-
When
upload-pack
has startedpack-objects
, there may be a quiet period whilepack-objects
prepares the pack. Normally it would output progress information, but if--quiet
was used for the fetch,pack-objects
will output nothing at all until the pack data begins. Some clients and networks may consider the server to be hung and give up. Setting this option instructsupload-pack
to send an empty keepalive packet everyuploadpack.keepAlive
seconds. Setting this option to 0 disables keepalive packets entirely. The default is 5 seconds. - uploadpack.packObjectsHook
-
If this option is set, when
upload-pack
would rungit pack-objects
to create a packfile for a client, it will run this shell command instead. Thepack-objects
command and arguments it would have run (including thegit pack-objects
at the beginning) are appended to the shell command. The stdin and stdout of the hook are treated as ifpack-objects
itself was run. I.e.,upload-pack
will feed input intended forpack-objects
to the hook, and expects a completed packfile on stdout.Note that this configuration variable is only respected when it is specified in protected configuration (see [SCOPES]). This is a safety measure against fetching from untrusted repositories.
- uploadpack.allowFilter
-
If this option is set,
upload-pack
will support partial clone and partial fetch object filtering. - uploadpackfilter.allow
-
Provides a default value for unspecified object filters (see: the below configuration variable). If set to
true
, this will also enable all filters which get added in the future. Defaults totrue
. - uploadpackfilter.<filter>.allow
-
Explicitly allow or ban the object filter corresponding to
<filter>
, where<filter>
may be one of:blob:none
,blob:limit
,object:type
,tree
,sparse:oid
, orcombine
. If using combined filters, bothcombine
and all of the nested filter kinds must be allowed. Defaults touploadpackfilter.allow
. - uploadpackfilter.tree.maxDepth
-
Only allow
--filter=tree:<n>
when<n>
is no more than the value ofuploadpackfilter.tree.maxDepth
. If set, this also impliesuploadpackfilter.tree.allow=true
, unless this configuration variable had already been set. Has no effect if unset. - uploadpack.allowRefInWant
-
If this option is set,
upload-pack
will support theref-in-want
feature of the protocol version 2fetch
command. This feature is intended for the benefit of load-balanced servers which may not have the same view of what OIDs their refs point to due to replication delay.