git@vger.kernel.org list mirror (unofficial, one of many)
 help / color / mirror / Atom feed
dbb80225b5497f11d502a9a6ad9e6bf482a87c85 blob 1377 bytes (raw)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
 
= 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 references pack
signature = "# v2 git bundle" LF

references   = *(prerequisite / ref) LF
prerequisite = "-" obj-id SP comment LF
comment      = *CHAR
ref          = obj-id SP refname LF

pack         = ... ; packfile
----

== Semantics

A Git bundle consists of three parts.

*   Prerequisites: Optional list of objects that are not included in the bundle
    file. A bundle can reference these prerequisite objects (or it can reference
    the objects reachable from the prerequisite objects). The bundle itself
    might not contain those objects.
*   References: Mapping of ref names to objects.
*   Git objects: Commit, tree, blob, and tags. These are included in the pack
    format.

If a bundle contains prerequisites, it means the bundle has a thin pack and the
bundle alone is not enough for resolving all objects. When you read such
bundles, you should have those missing objects beforehand.

In the bundle format, there can be a comment following a prerequisite obj-id.
This is a comment and it has no specific meaning. When you write a bundle, you
can put any string here. When you read a bundle, you can ignore this part.
debug log:

solving dbb80225b5 ...
found dbb80225b5 in https://public-inbox.org/git/20200130225818.193825-1-masayasuzuki@google.com/

applying [1/1] https://public-inbox.org/git/20200130225818.193825-1-masayasuzuki@google.com/
diff --git a/Documentation/technical/bundle-format.txt b/Documentation/technical/bundle-format.txt
new file mode 100644
index 0000000000..dbb80225b5

Checking patch Documentation/technical/bundle-format.txt...
Applied patch Documentation/technical/bundle-format.txt cleanly.

index at:
100644 dbb80225b5497f11d502a9a6ad9e6bf482a87c85	Documentation/technical/bundle-format.txt

git@vger.kernel.org list mirror (unofficial, one of many)

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://public-inbox.org/git
	git clone --mirror http://ou63pmih66umazou.onion/git
	git clone --mirror http://czquwvybam4bgbro.onion/git
	git clone --mirror http://hjrcffqmbrq6wope.onion/git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V1 git git/ https://public-inbox.org/git \
		git@vger.kernel.org
	public-inbox-index git

Example config snippet for mirrors.
Newsgroups are available over NNTP:
	nntp://news.public-inbox.org/inbox.comp.version-control.git
	nntp://ou63pmih66umazou.onion/inbox.comp.version-control.git
	nntp://czquwvybam4bgbro.onion/inbox.comp.version-control.git
	nntp://hjrcffqmbrq6wope.onion/inbox.comp.version-control.git
	nntp://news.gmane.io/gmane.comp.version-control.git
 note: .onion URLs require Tor: https://www.torproject.org/

code repositories for the project(s) associated with this inbox:

	https://80x24.org/mirrors/git.git

AGPL code for this site: git clone https://public-inbox.org/public-inbox.git