Documentation/git-remote-helpers: explain how import works with multiple refs

This is important for two reasons:

* when two "import" lines follow each other, only one "done" command
  should be issued in the fast-import stream, not one per "import".

* The blank line terminating an import command should not be confused
  with the one terminating the sequence of commands.

While we're there, illustrate the corresponding explanation for push
batches with an example.

Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Acked-by: Sverre Rabbelier <srabbelier@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Matthieu Moy 2011-09-01 18:49:37 +02:00 committed by Junio C Hamano
parent b4fc8d6ac6
commit 960e311496

View File

@ -241,7 +241,22 @@ Supported if the helper has the "fetch" capability.
'push' +<src>:<dst>:: 'push' +<src>:<dst>::
Pushes the given local <src> commit or branch to the Pushes the given local <src> commit or branch to the
remote branch described by <dst>. A batch sequence of remote branch described by <dst>. A batch sequence of
one or more push commands is terminated with a blank line. one or more 'push' commands is terminated with a blank line
(if there is only one reference to push, a single 'push' command
is followed by a blank line). For example, the following would
be two batches of 'push', the first asking the remote-helper
to push the local ref 'master' to the remote ref 'master' and
the local 'HEAD' to the remote 'branch', and the second
asking to push ref 'foo' to ref 'bar' (forced update requested
by the '+').
+
------------
push refs/heads/master:refs/heads/master
push HEAD:refs/heads/branch
\n
push +refs/heads/foo:refs/heads/bar
\n
------------
+ +
Zero or more protocol options may be entered after the last 'push' Zero or more protocol options may be entered after the last 'push'
command, before the batch's terminating blank line. command, before the batch's terminating blank line.
@ -266,6 +281,11 @@ Supported if the helper has the "push" capability.
Especially useful for interoperability with a foreign versioning Especially useful for interoperability with a foreign versioning
system. system.
+ +
Just like 'push', a batch sequence of one or more 'import' is
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. Supported if the helper has the "import" capability.
'connect' <service>:: 'connect' <service>::