Add documentation for the 'bidi-import' capability of remote-helpers

Signed-off-by: Florian Achleitner <florian.achleitner.2.6.31@gmail.com> Acked-by: David Michael Barr <b@rr-dav.id.au> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Florian Achleitner committed Sep 19, 2012 at 17:21 UTC 271bfd678bb0397dfc6e0dc599c134eb6e782511
1 file changed +20 -1
Documentation/git-remote-helpers.txt
+20 -1
@@ -98,6 +98,20 @@ advertised with this capability must cover all refs reported by
98 the list command. If no 'refspec' capability is advertised,
99 there is an implied `refspec *:*`.
100
101 +'bidi-import'::
102 + The fast-import commands 'cat-blob' and 'ls' can be used by remote-helpers
103 + to retrieve information about blobs and trees that already exist in
104 + fast-import's memory. This requires a channel from fast-import to the
105 + remote-helper.
106 + If it is advertised in addition to "import", git establishes a pipe from
107 + fast-import to the remote-helper's stdin.
108 + It follows that git and fast-import are both connected to the
109 + remote-helper's stdin. Because git can send multiple commands to
110 + the remote-helper it is required that helpers that use 'bidi-import'
111 + buffer all 'import' commands of a batch before sending data to fast-import.
112 + This is to prevent mixing commands and fast-import responses on the
113 + helper's stdin.
114 +
115 Capabilities for Pushing
116 ~~~~~~~~~~~~~~~~~~~~~~~~
117 'connect'::
@@ -286,7 +300,12 @@ terminated with a blank line. For each batch of 'import', the remote
300 helper should produce a fast-import stream terminated by a 'done'
301 command.
302 +
289 -Supported if the helper has the "import" capability.
303 +Note that if the 'bidi-import' capability is used the complete batch
304 +sequence has to be buffered before starting to send data to fast-import
305 +to prevent mixing of commands and fast-import responses on the helper's
306 +stdin.
307 ++
308 +Supported if the helper has the 'import' capability.
309
310 'connect' <service>::
311 Connects to given service. Standard input and standard output