git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v8 06/16] Add documentation for the 'bidi-import' capability of remote-helpers

From
Florian Achleitner <florian.achleitner.2.6.31@gmail.com>
Date
Sep 19, 2012, 15:21 UTC
Message-ID
<1348068090-31988-7-git-send-email-florian.achleitner.2.6.31@gmail.com>
In-Reply-To
<1348068090-31988-6-git-send-email-florian.achleitner.2.6.31@gmail.com>
Signed-off-by: Florian Achleitner <florian.achleitner.2.6.31@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
no diff
 Documentation/git-remote-helpers.txt |   21 ++++++++++++++++++++-
 1 file changed, 20 insertions(+), 1 deletion(-)
diff --git a/Documentation/git-remote-helpers.txt b/Documentation/git-remote-helpers.txt
index f5836e4..5ce4cda 100644
--- a/Documentation/git-remote-helpers.txt
+++ b/Documentation/git-remote-helpers.txt
@@ -98,6 +98,20 @@ advertised with this capability must cover all refs reported by
 the list command.  If no 'refspec' capability is advertised,
 there is an implied `refspec *:*`.
 
+'bidi-import'::
+	The fast-import commands 'cat-blob' and 'ls' can be used by remote-helpers
+	to retrieve information about blobs and trees that already exist in
+	fast-import's memory. This requires a channel from fast-import to the
+	remote-helper.
+	If it is advertised in addition to "import", git establishes a pipe from
+	fast-import to the remote-helper's stdin.
+	It follows that git and fast-import are both connected to the
+	remote-helper's stdin. Because git can send multiple commands to
+	the remote-helper it is required that helpers that use 'bidi-import'
+	buffer all 'import' commands of a batch before sending data to fast-import.
+	This is to prevent mixing commands and fast-import responses on the
+	helper's stdin.
+
 Capabilities for Pushing
 ~~~~~~~~~~~~~~~~~~~~~~~~
 'connect'::
@@ -286,7 +300,12 @@ terminated with a blank line. For each batch of 'import', the remote
 helper should produce a fast-import stream terminated by a 'done'
 command.
 +
-Supported if the helper has the "import" capability.
+Note that if the 'bidi-import' capability is used the complete batch
+sequence has to be buffered before starting to send data to fast-import
+to prevent mixing of commands and fast-import responses on the helper's
+stdin.
++
+Supported if the helper has the 'import' capability.
 
 'connect' <service>::
 	Connects to given service. Standard input and standard output
-- 
1.7.9.5
Previous: Florian AchleitnerNext: Florian Achleitner
Message 7 of 17 in “GSOC remote-svn”
  1. 00/16 GSOC remote-svnFlorian Achleitner, Sep 19, 2012
  2. 01/16 Implement a remote helper for svn in CFlorian Achleitner, Sep 19, 2012
  3. 02/16 Add git-remote-testsvn to MakefileFlorian Achleitner, Sep 19, 2012
  4. 03/16 Add svndump_init_fd to allow reading dumps from arbitrary FDsFlorian Achleitner, Sep 19, 2012
  5. 04/16 Add argv_array_detach and argv_array_free_detachedFlorian Achleitner, Sep 19, 2012
  6. 05/16 Connect fast-import to the remote-helper via pipe, adding 'bidi-import' capabilityFlorian Achleitner, Sep 19, 2012
  7. 06/16 Add documentation for the 'bidi-import' capability of remote-helpersFlorian Achleitner, Sep 19, 2012
  8. 07/16 When debug==1, start fast-import with "--stats" instead of "--quiet"Florian Achleitner, Sep 19, 2012
  9. 08/16 remote-svn, vcs-svn: Enable fetching to private refsFlorian Achleitner, Sep 19, 2012
  10. 09/16 Allow reading svn dumps from files via file:// urlsFlorian Achleitner, Sep 19, 2012
  11. 10/16 vcs-svn: add fast_export_note to create notesFlorian Achleitner, Sep 19, 2012
  12. 11/16 Create a note for every imported commit containing svn metadataFlorian Achleitner, Sep 19, 2012
  13. 12/16 remote-svn: Activate import/export-marks for fast-importFlorian Achleitner, Sep 19, 2012
  14. 13/16 remote-svn: add incremental importFlorian Achleitner, Sep 19, 2012
  15. 14/16 Add a svnrdump-simulator replaying a dump file for testingFlorian Achleitner, Sep 19, 2012
  16. 15/16 remote-svn: add marks-file regenerationFlorian Achleitner, Sep 19, 2012
  17. 16/16 Add a test script for remote-svnFlorian Achleitner, Sep 19, 2012

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.