docs: update remote helper docs for object-format extensions
Update the remote helper docs to document the object-format extensions we will implement in remote-curl and the transport helper code shortly. Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
brian m. carlson committed
May 25, 2020 at 19:59 UTC
452e35684f97be1ef3b1fa608b8ec7fbaebf18a6
1 file changed
+29
-4
Documentation/gitremote-helpers.txt
+29
-4
@@ -238,6 +238,9 @@ the remote repository.
238
`--signed-tags=verbatim` to linkgit:git-fast-export[1]. In the
239
absence of this capability, Git will use `--signed-tags=warn-strip`.
240
241
+'object-format'::
242
+ This indicates that the helper is able to interact with the remote
243
+ side using an explicit hash algorithm extension.
244
245
246
COMMANDS
@@ -257,12 +260,14 @@ Support for this command is mandatory.
260
'list'::
261
Lists the refs, one per line, in the format "<value> <name>
262
[<attr> ...]". The value may be a hex sha1 hash, "@<dest>" for
260
- a symref, or "?" to indicate that the helper could not get the
261
- value of the ref. A space-separated list of attributes follows
262
- the name; unrecognized attributes are ignored. The list ends
263
- with a blank line.
263
+ a symref, ":<keyword> <value>" for a key-value pair, or
264
+ "?" to indicate that the helper could not get the value of the
265
+ ref. A space-separated list of attributes follows the name;
266
+ unrecognized attributes are ignored. The list ends with a
267
+ blank line.
268
+
269
See REF LIST ATTRIBUTES for a list of currently defined attributes.
270
+See REF LIST KEYWORDS for a list of currently defined keywords.
271
+
272
Supported if the helper has the "fetch" or "import" capability.
273
@@ -430,6 +435,18 @@ attributes are defined.
435
This ref is unchanged since the last import or fetch, although
436
the helper cannot necessarily determine what value that produced.
437
438
+REF LIST KEYWORDS
439
+-----------------
440
+
441
+The 'list' command may produce a list of key-value pairs.
442
+The following keys are defined.
443
+
444
+'object-format'::
445
+ The refs are using the given hash algorithm. This keyword is only
446
+ used if the server and client both support the object-format
447
+ extension.
448
+
449
+
450
OPTIONS
451
-------
452
@@ -514,6 +531,14 @@ set by Git if the remote helper has the 'option' capability.
531
transaction. If successful, all refs will be updated, or none will. If the
532
remote side does not support this capability, the push will fail.
533
534
+'option object-format' {'true'|algorithm}::
535
+ If 'true', indicate that the caller wants hash algorithm information
536
+ to be passed back from the remote. This mode is used when fetching
537
+ refs.
538
++
539
+If set to an algorithm, indicate that the caller wants to interact with
540
+the remote side using that algorithm.
541
+
542
SEE ALSO
543
--------
544
linkgit:git-remote[1]