diff options
Diffstat (limited to 'third_party/git/Documentation/technical/bundle-format.txt')
-rw-r--r-- | third_party/git/Documentation/technical/bundle-format.txt | 48 |
1 files changed, 0 insertions, 48 deletions
diff --git a/third_party/git/Documentation/technical/bundle-format.txt b/third_party/git/Documentation/technical/bundle-format.txt deleted file mode 100644 index 0e828151a502..000000000000 --- a/third_party/git/Documentation/technical/bundle-format.txt +++ /dev/null @@ -1,48 +0,0 @@ -= Git bundle v2 format - -The Git bundle format is a format that represents both refs and Git objects. - -== Format - -We will use ABNF notation to define the Git bundle format. See -protocol-common.txt for the details. - ----- -bundle = signature *prerequisite *reference LF pack -signature = "# v2 git bundle" LF - -prerequisite = "-" obj-id SP comment LF -comment = *CHAR -reference = obj-id SP refname LF - -pack = ... ; packfile ----- - -== Semantics - -A Git bundle consists of three parts. - -* "Prerequisites" lists the objects that are NOT included in the bundle and the - reader of the bundle MUST already have, in order to use the data in the - bundle. The objects stored in the bundle may refer to prerequisite objects and - anything reachable from them (e.g. a tree object in the bundle can reference - a blob that is reachable from a prerequisite) and/or expressed as a delta - against prerequisite objects. - -* "References" record the tips of the history graph, iow, what the reader of the - bundle CAN "git fetch" from it. - -* "Pack" is the pack data stream "git fetch" would send, if you fetch from a - repository that has the references recorded in the "References" above into a - repository that has references pointing at the objects listed in - "Prerequisites" above. - -In the bundle format, there can be a comment following a prerequisite obj-id. -This is a comment and it has no specific meaning. The writer of the bundle MAY -put any string here. The reader of the bundle MUST ignore the comment. - -=== Note on the shallow clone and a Git bundle - -Note that the prerequisites does not represent a shallow-clone boundary. The -semantics of the prerequisites and the shallow-clone boundaries are different, -and the Git bundle v2 format cannot represent a shallow clone repository. |