##// END OF EJS Templates
bundlespec: add documentation about existing option...
marmoute -
r50304:23dd6368 default
parent child Browse files
Show More
@@ -1,84 +1,111 b''
1 Mercurial supports generating standalone "bundle" files that hold repository
1 Mercurial supports generating standalone "bundle" files that hold repository
2 data. These "bundles" are typically saved locally and used later or exchanged
2 data. These "bundles" are typically saved locally and used later or exchanged
3 between different repositories, possibly on different machines. Example
3 between different repositories, possibly on different machines. Example
4 commands using bundles are :hg:`bundle` and :hg:`unbundle`.
4 commands using bundles are :hg:`bundle` and :hg:`unbundle`.
5
5
6 Generation of bundle files is controlled by a "bundle specification"
6 Generation of bundle files is controlled by a "bundle specification"
7 ("bundlespec") string. This string tells the bundle generation process how
7 ("bundlespec") string. This string tells the bundle generation process how
8 to create the bundle.
8 to create the bundle.
9
9
10 A "bundlespec" string is composed of the following elements:
10 A "bundlespec" string is composed of the following elements:
11
11
12 type
12 type
13 A string denoting the bundle format to use.
13 A string denoting the bundle format to use.
14
14
15 compression
15 compression
16 Denotes the compression engine to use compressing the raw bundle data.
16 Denotes the compression engine to use compressing the raw bundle data.
17
17
18 parameters
18 parameters
19 Arbitrary key-value parameters to further control bundle generation.
19 Arbitrary key-value parameters to further control bundle generation.
20
20
21 A "bundlespec" string has the following formats:
21 A "bundlespec" string has the following formats:
22
22
23 <type>
23 <type>
24 The literal bundle format string is used.
24 The literal bundle format string is used.
25
25
26 <compression>-<type>
26 <compression>-<type>
27 The compression engine and format are delimited by a hyphen (``-``).
27 The compression engine and format are delimited by a hyphen (``-``).
28
28
29 Optional parameters follow the ``<type>``. Parameters are URI escaped
29 Optional parameters follow the ``<type>``. Parameters are URI escaped
30 ``key=value`` pairs. Each pair is delimited by a semicolon (``;``). The
30 ``key=value`` pairs. Each pair is delimited by a semicolon (``;``). The
31 first parameter begins after a ``;`` immediately following the ``<type>``
31 first parameter begins after a ``;`` immediately following the ``<type>``
32 value.
32 value.
33
33
34 Available Types
34 Available Types
35 ===============
35 ===============
36
36
37 The following bundle <type> strings are available:
37 The following bundle <type> strings are available:
38
38
39 v1
39 v1
40 Produces a legacy "changegroup" version 1 bundle.
40 Produces a legacy "changegroup" version 1 bundle.
41
41
42 This format is compatible with nearly all Mercurial clients because it is
42 This format is compatible with nearly all Mercurial clients because it is
43 the oldest. However, it has some limitations, which is why it is no longer
43 the oldest. However, it has some limitations, which is why it is no longer
44 the default for new repositories.
44 the default for new repositories.
45
45
46 ``v1`` bundles can be used with modern repositories using the "generaldelta"
46 ``v1`` bundles can be used with modern repositories using the "generaldelta"
47 storage format. However, it may take longer to produce the bundle and the
47 storage format. However, it may take longer to produce the bundle and the
48 resulting bundle may be significantly larger than a ``v2`` bundle.
48 resulting bundle may be significantly larger than a ``v2`` bundle.
49
49
50 ``v1`` bundles can only use the ``gzip``, ``bzip2``, and ``none`` compression
50 ``v1`` bundles can only use the ``gzip``, ``bzip2``, and ``none`` compression
51 formats.
51 formats.
52
52
53 v2
53 v2
54 Produces a version 2 bundle.
54 Produces a version 2 bundle.
55
55
56 Version 2 bundles are an extensible format that can store additional
56 Version 2 bundles are an extensible format that can store additional
57 repository data (such as bookmarks and phases information) and they can
57 repository data (such as bookmarks and phases information) and they can
58 store data more efficiently, resulting in smaller bundles.
58 store data more efficiently, resulting in smaller bundles.
59
59
60 Version 2 bundles can also use modern compression engines, such as
60 Version 2 bundles can also use modern compression engines, such as
61 ``zstd``, making them faster to compress and often smaller.
61 ``zstd``, making them faster to compress and often smaller.
62
62
63 Available Compression Engines
63 Available Compression Engines
64 =============================
64 =============================
65
65
66 The following bundle <compression> engines can be used:
66 The following bundle <compression> engines can be used:
67
67
68 .. bundlecompressionmarker
68 .. bundlecompressionmarker
69
69
70 Available Options
71 =================
72
73 The following options exist:
74
75 changegroup
76 Include the changegroup data in the bundle (default to True).
77
78 cg.version
79 Select the version of the changegroup to use. Available options are : 01, 02
80 or 03. By default it will be automatically selected according to the current
81 repository format.
82
83 obsolescence
84 Include obsolescence-markers relevant to the bundled changesets.
85
86 phases
87 Include phase information relevant to the bundled changesets.
88
89 revbranchcache
90 Include the "tags-fnodes" cache inside the bundle.
91
92
93 tagsfnodescache
94 Include the "tags-fnodes" cache inside the bundle.
95
96
70 Examples
97 Examples
71 ========
98 ========
72
99
73 ``v2``
100 ``v2``
74 Produce a ``v2`` bundle using default options, including compression.
101 Produce a ``v2`` bundle using default options, including compression.
75
102
76 ``none-v1``
103 ``none-v1``
77 Produce a ``v1`` bundle with no compression.
104 Produce a ``v1`` bundle with no compression.
78
105
79 ``zstd-v2``
106 ``zstd-v2``
80 Produce a ``v2`` bundle with zstandard compression using default
107 Produce a ``v2`` bundle with zstandard compression using default
81 settings.
108 settings.
82
109
83 ``zstd-v1``
110 ``zstd-v1``
84 This errors because ``zstd`` is not supported for ``v1`` types.
111 This errors because ``zstd`` is not supported for ``v1`` types.
General Comments 0
You need to be logged in to leave comments. Login now