aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/git-http-backend.txt
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2015-06-01 12:45:09 -0700
committerJunio C Hamano <gitster@pobox.com>2015-06-01 12:45:09 -0700
commit777e75b60568b613e452ebbb30a1fb27c4fd7d8a (patch)
tree3d015063862646ff09bae906684456cccba3997f /Documentation/git-http-backend.txt
parentf93a3937877386af5d870b68db20d2ff27e3e41e (diff)
parent636614f337409abccf60b00dddd04e6628bf85de (diff)
downloadgit-777e75b60568b613e452ebbb30a1fb27c4fd7d8a.tar.gz
Merge branch 'jk/http-backend-deadlock'
Communication between the HTTP server and http_backend process can lead to a dead-lock when relaying a large ref negotiation request. Diagnose the situation better, and mitigate it by reading such a request first into core (to a reasonable limit). * jk/http-backend-deadlock: http-backend: spool ref negotiation requests to buffer t5551: factor out tag creation http-backend: fix die recursion with custom handler
Diffstat (limited to 'Documentation/git-http-backend.txt')
-rw-r--r--Documentation/git-http-backend.txt9
1 files changed, 9 insertions, 0 deletions
diff --git a/Documentation/git-http-backend.txt b/Documentation/git-http-backend.txt
index 3ca18c4de5..9268fb6b1e 100644
--- a/Documentation/git-http-backend.txt
+++ b/Documentation/git-http-backend.txt
@@ -255,6 +255,15 @@ The GIT_HTTP_EXPORT_ALL environmental variable may be passed to
'git-http-backend' to bypass the check for the "git-daemon-export-ok"
file in each repository before allowing export of that repository.
+The `GIT_HTTP_MAX_REQUEST_BUFFER` environment variable (or the
+`http.maxRequestBuffer` config variable) may be set to change the
+largest ref negotiation request that git will handle during a fetch; any
+fetch requiring a larger buffer will not succeed. This value should not
+normally need to be changed, but may be helpful if you are fetching from
+a repository with an extremely large number of refs. The value can be
+specified with a unit (e.g., `100M` for 100 megabytes). The default is
+10 megabytes.
+
The backend process sets GIT_COMMITTER_NAME to '$REMOTE_USER' and
GIT_COMMITTER_EMAIL to '$\{REMOTE_USER}@http.$\{REMOTE_ADDR\}',
ensuring that any reflogs created by 'git-receive-pack' contain some