From: Junio C Hamano Date: Wed, 15 Aug 2018 22:08:21 +0000 (-0700) Subject: Merge branch 'bw/protocol-v2' X-Git-Tag: v2.19.0-rc0~81 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/1ba2fc603f4aa564e029843589ca0b36a8aed4fc?ds=inline;hp=-c Merge branch 'bw/protocol-v2' Doc update. * bw/protocol-v2: pack-protocol: mention and point to docs for protocol v2 --- 1ba2fc603f4aa564e029843589ca0b36a8aed4fc diff --combined Documentation/technical/pack-protocol.txt index 508a344cf1,efea53e2b6..6ac774d5f6 --- a/Documentation/technical/pack-protocol.txt +++ b/Documentation/technical/pack-protocol.txt @@@ -50,7 -50,8 +50,8 @@@ Each Extra Parameter takes the form of Servers that receive any such Extra Parameters MUST ignore all unrecognized keys. Currently, the only Extra Parameter recognized is - "version=1". + "version" with a value of '1' or '2'. See protocol-v2.txt for more + information on protocol version 2. Git Transport ------------- @@@ -241,7 -242,6 +242,7 @@@ out of what the server said it could d upload-request = want-list *shallow-line *1depth-request + [filter-request] flush-pkt want-list = first-want @@@ -257,8 -257,6 +258,8 @@@ additional-want = PKT-LINE("want" SP obj-id) depth = 1*DIGIT + + filter-request = PKT-LINE("filter" SP filter-spec) ---- Clients MUST send all the obj-ids it wants from the reference @@@ -281,13 -279,6 +282,13 @@@ complete those commits. Commits whose p result are defined as shallow and marked as such in the server. This information is sent back to the client in the next step. +The client can optionally request that pack-objects omit various +objects from the packfile using one of several filtering techniques. +These are intended for use with partial clone and partial fetch +operations. An object that does not meet a filter-spec value is +omitted unless explicitly requested in a 'want' line. See `rev-list` +for possible filter-spec values. + Once all the 'want's and 'shallow's (and optional 'deepen') are transferred, clients MUST send a flush-pkt, to tell the server side that it is done sending the list.