Skip to content

Commit

Permalink
git-remote-helpers.txt: document missing capabilities
Browse files Browse the repository at this point in the history
Specifically, document the 'export' and '(im|ex)port-marks'
capabilities as well as the export command, which were
undocumented (but in active use).

Signed-off-by: Max Horn <max@quendi.de>
Acked-by: Sverre Rabbelier <srabbelier@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
  • Loading branch information
Max Horn authored and Junio C Hamano committed Dec 7, 2012
1 parent f829a9e commit b4b106e
Showing 1 changed file with 42 additions and 3 deletions.
45 changes: 42 additions & 3 deletions Documentation/git-remote-helpers.txt
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,10 @@ to the `capabilities` command (see COMMANDS, below).
For listing remote refs and fetching the associated history to
the local object store.

'export'::
For listing remote refs and pushing specified objects from a
fast-import stream to remote refs.

'import'::
For listing remote refs and fetching the associated history as
a fast-import stream.
Expand Down Expand Up @@ -143,6 +147,16 @@ there is an implied `refspec *:*`.
This is to prevent mixing commands and fast-import responses on the
helper's stdin.

'export-marks' <file>::
This modifies the 'export' capability, instructing git to dump the
internal marks table to <file> when complete. For details,
read up on '--export-marks=<file>' in linkgit:git-fast-export[1].

'import-marks' <file>::
This modifies the 'export' capability, instructing git to load the
marks specified in <file> before processing any input. For details,
read up on '--import-marks=<file>' in linkgit:git-fast-export[1].

Capabilities for Pushing
~~~~~~~~~~~~~~~~~~~~~~~~
'connect'::
Expand All @@ -158,9 +172,18 @@ Supported commands: 'connect'.
+
Supported commands: 'list for-push', 'push'.

If a helper advertises both 'connect' and 'push', git will use
'connect' if possible and fall back to 'push' if the helper requests
so when connecting (see the 'connect' command under COMMANDS).
'export'::
Can discover remote refs and push specified objects from a
fast-import stream to remote refs.
+
Supported commands: 'list for-push', 'export'.

If a helper advertises 'connect', git will use it if possible and
fall back to another capability if the helper requests so when
connecting (see the 'connect' command under COMMANDS).
When choosing between 'push' and 'export', git prefers 'push'.
Other frontends may have some other order of preference.


Capabilities for Fetching
~~~~~~~~~~~~~~~~~~~~~~~~~
Expand Down Expand Up @@ -307,6 +330,22 @@ stdin.
+
Supported if the helper has the 'import' capability.

'export'::
Instructs the remote helper that any subsequent input is
part of a fast-import stream (generated by 'git fast-export')
containing objects which should be pushed to the remote.
+
Especially useful for interoperability with a foreign versioning
system.
+
The 'export-marks' and 'import-marks' capabilities, if specified,
affect this command in so far as they are passed on to 'git
fast-export', which then will load/store a table of marks for
local objects. This can be used to implement for incremental
operations.
+
Supported if the helper has the 'export' capability.

'connect' <service>::
Connects to given service. Standard input and standard output
of helper are connected to specified service (git prefix is
Expand Down

0 comments on commit b4b106e

Please sign in to comment.