summaryrefslogtreecommitdiff
path: root/doc/internals
diff options
context:
space:
mode:
Diffstat (limited to 'doc/internals')
-rw-r--r--doc/internals/key_format.mdwn9
1 files changed, 6 insertions, 3 deletions
diff --git a/doc/internals/key_format.mdwn b/doc/internals/key_format.mdwn
index 17e20592c..52fb80395 100644
--- a/doc/internals/key_format.mdwn
+++ b/doc/internals/key_format.mdwn
@@ -1,6 +1,6 @@
A git-annex key has this format:
- BACKEND-sNNNN-mNNNN--NAME
+ BACKEND[-sNNNN][-mNNNN][-SNNNN-CNNNN]--NAME
For example:
@@ -10,12 +10,15 @@ For example:
are always upper-cased.
* The name field at the end has a format dependent on the backend. It is
always the last field, and is prefixed with "--". Unlike other fields,
- it may contain "-" in its content. It should not contain newline characters;
- otherwise nearly anything goes.
+ it may contain "-" in its content. It should not contain newline
+ characters or "/"; otherwise nearly anything goes.
* The "-s" field is optional, and is the size of the content in bytes.
* The "-m" field is optional, and is the mtime of the file when it was
added to git-annex, expressed as seconds from the epoch.
This is currently only used by the WORM backend.
+* The "-S" and "-C" fields are only used for keys that are chunks
+ of some other key. "-S" is the size of the chunk, and "-c" is the chunk
+ number (starting at 1).
* Other fields could be added in the future, if needed.
git-annex always puts the fields in the order shown above when serializing