Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.kernel.org/pub/scm/git/git.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2021-05-16 15:05:22 +0300
committerJunio C Hamano <gitster@pobox.com>2021-05-16 15:05:22 +0300
commit644f4a20468da89c1325a539c0521336f7835a64 (patch)
tree39ccb6b55222d659ab3d63d8b91e8ba549c360e5 /Documentation
parent97eea85a0a1ec66d356567808a1e4ca2367e0ce7 (diff)
parent477673d6f39b4829baa98ad88d6b65b35b79fd0f (diff)
Merge branch 'jt/push-negotiation'
"git push" learns to discover common ancestor with the receiving end over protocol v2. * jt/push-negotiation: send-pack: support push negotiation fetch: teach independent negotiation (no packfile) fetch-pack: refactor command and capability write fetch-pack: refactor add_haves() fetch-pack: refactor process_acks()
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/config/push.txt7
-rw-r--r--Documentation/technical/protocol-v2.txt8
2 files changed, 15 insertions, 0 deletions
diff --git a/Documentation/config/push.txt b/Documentation/config/push.txt
index 21b256e0a4..f2667b2689 100644
--- a/Documentation/config/push.txt
+++ b/Documentation/config/push.txt
@@ -120,3 +120,10 @@ push.useForceIfIncludes::
`--force-if-includes` as an option to linkgit:git-push[1]
in the command line. Adding `--no-force-if-includes` at the
time of push overrides this configuration setting.
+
+push.negotiate::
+ If set to "true", attempt to reduce the size of the packfile
+ sent by rounds of negotiation in which the client and the
+ server attempt to find commits in common. If "false", Git will
+ rely solely on the server's ref advertisement to find commits
+ in common.
diff --git a/Documentation/technical/protocol-v2.txt b/Documentation/technical/protocol-v2.txt
index f4ed141774..a1e31367f4 100644
--- a/Documentation/technical/protocol-v2.txt
+++ b/Documentation/technical/protocol-v2.txt
@@ -346,6 +346,14 @@ explained below.
client should download from all given URIs. Currently, the
protocols supported are "http" and "https".
+If the 'wait-for-done' feature is advertised, the following argument
+can be included in the client's request.
+
+ wait-for-done
+ Indicates to the server that it should never send "ready", but
+ should wait for the client to say "done" before sending the
+ packfile.
+
The response of `fetch` is broken into a number of sections separated by
delimiter packets (0001), with each section beginning with its section
header. Most sections are sent only when the packfile is sent.