~bzr-pqm/bzr/bzr.dev

1861.2.6 by Alexander Belchenko
branding: change Bazaar-NG to Bazaar
1
====================
2
Bazaar configuration
3
====================
1821.1.1 by Alexander Belchenko
win32 installer for bzr.dev.0.9
4
1861.2.6 by Alexander Belchenko
branding: change Bazaar-NG to Bazaar
5
Information on how to configure Bazaar.
1821.1.1 by Alexander Belchenko
win32 installer for bzr.dev.0.9
6
1610.2.1 by James Blackwell
Copied in docs for wiki & First round cleanup
7
Location of configuration file
8
==============================
9
Each user gets a pair of configurations files in $HOME/.bazaar. The first
10
one, named bazaar.conf, includes default configuration options. The other
1770.2.2 by Aaron Bentley
Rename branches.conf to locations.conf
11
file, locations.conf, contains configuration information for specific
12
branch locations.
1610.2.1 by James Blackwell
Copied in docs for wiki & First round cleanup
13
14
General Format
15
==============
16
An ini file has three types of contructs: section headers, section
17
variables and comments.
18
2120.6.14 by James Henstridge
Fix RST syntax as suggested by j-a-meinel
19
Comments
20
--------
1610.2.1 by James Blackwell
Copied in docs for wiki & First round cleanup
21
A comment is any line that starts with a "#" (sometimes called a "hash
22
mark", "pound sign" or "number sign"). Comment lines are ignored by
1861.2.6 by Alexander Belchenko
branding: change Bazaar-NG to Bazaar
23
Bazaar when parsing ini files.
1610.2.1 by James Blackwell
Copied in docs for wiki & First round cleanup
24
2120.6.14 by James Henstridge
Fix RST syntax as suggested by j-a-meinel
25
Section Headers
26
---------------
1610.2.1 by James Blackwell
Copied in docs for wiki & First round cleanup
27
A section header is a word enclosed in brackets that starts at the begining
28
of a line, typical section headers look like this::
29
30
    [DEFAULT]
31
32
The only valid section header for bazaar.conf is [DEFAULT], which is case
33
senstive. The default section provides for setting variables which can be
34
overridden with the branch config file.
35
1770.2.2 by Aaron Bentley
Rename branches.conf to locations.conf
36
For locations.conf, the variables from the section with the longest matching
1610.2.1 by James Blackwell
Copied in docs for wiki & First round cleanup
37
section header are used to the exclusion of other potentially valid section
38
headers. A section header uses the path for the branch as the section
39
header. Some examples include::
40
41
    [http://mybranches.isp.com/~jdoe/branchdir]
42
    [/home/jdoe/branches/]
43
44
45
2120.6.14 by James Henstridge
Fix RST syntax as suggested by j-a-meinel
46
Section Variables
1610.2.1 by James Blackwell
Copied in docs for wiki & First round cleanup
47
-----------------
48
49
A section variable resides within a section. A section variable contains a
50
variable name, an equals sign and a value and generally takes the following
51
form::
52
53
    email            = John Doe <jdoe@isp.com>
54
    check_signatures = require
55
56
2120.6.14 by James Henstridge
Fix RST syntax as suggested by j-a-meinel
57
Variable Policies
2120.6.13 by James Henstridge
update doc/configuration.txt with information about policies
58
-----------------
59
60
Variables defined in a section affect the named directory or URL plus
61
any locations they contain.  Policies can be used to change how a
62
variable value is interpreted for contained locations.  Currently
63
there are three policies available:
64
2120.6.14 by James Henstridge
Fix RST syntax as suggested by j-a-meinel
65
 none:
66
   the value is interpreted the same for contained locations.  This is
67
   the default behaviour.
68
 norecurse:
69
   the value is only used for the exact location specified by the
70
   section name.
71
 appendpath:
72
   for contained locations, any additional path components are
73
   appended to the value.
2120.6.13 by James Henstridge
update doc/configuration.txt with information about policies
74
75
Policies are specified by keys with names of the form "$var:policy".
76
For example, to define the push location for a tree of branches, the
2120.6.14 by James Henstridge
Fix RST syntax as suggested by j-a-meinel
77
following could be used::
2120.6.13 by James Henstridge
update doc/configuration.txt with information about policies
78
79
  [/top/location]
80
  push_location = sftp://example.com/location
81
  push_location:policy = appendpath
82
2120.6.14 by James Henstridge
Fix RST syntax as suggested by j-a-meinel
83
With this configuration, the push location for ``/top/location/branch1``
84
would be ``sftp://example.com/location/branch1``.
2120.6.13 by James Henstridge
update doc/configuration.txt with information about policies
85
86
1610.2.1 by James Blackwell
Copied in docs for wiki & First round cleanup
87
The main configuration file, bazaar.conf
88
----------------------------------------
89
90
The main configuration file, $HOME/.bazaar/bazaar.conf, only allows one
91
section called '''[DEFAULT]'''. This default section contains the default
92
configuration options for all branches. The default section can be
1770.2.2 by Aaron Bentley
Rename branches.conf to locations.conf
93
overriden by providing a branch specific section in locations.conf.
1610.2.1 by James Blackwell
Copied in docs for wiki & First round cleanup
94
95
A typical bazaar.conf section often looks like the following::
96
97
    [DEFAULT]
98
    email             = John Doe <jdoe@isp.com>
99
    editor            = /usr/bin/vim
100
    check_signatures  = check-available
101
    create_signatures = when-required
102
1770.2.2 by Aaron Bentley
Rename branches.conf to locations.conf
103
$HOME/.bazaar/locations.conf allows one to specify overriding settings for a
1610.2.1 by James Blackwell
Copied in docs for wiki & First round cleanup
104
specific branch. The format is almost identical to the default section in
105
bazaar.conf with one significant change: The section header, instead of
106
saying default, will be the path to a branch that you wish to override a
107
value for. The ? and * wildcards are supported::
108
109
    [/home/jdoe/branches/nethack]
110
    email = Nethack Admin <nethack@nethack.com>
111
112
    [http://hypothetical.site.com/branches/devel-branch]
113
    create_signatures = always
114
    check_signatures  = always
115
1861.2.8 by Alexander Belchenko
More branding: bazaar-ng -> Bazaar; bazaar-ng.org -> bazaar-vcs.org
116
    [http://bazaar-vcs.org/bzr/*]
1610.2.1 by James Blackwell
Copied in docs for wiki & First round cleanup
117
    check_signatures  = require
118
119
Common Variable options
120
=======================
121
122
email
123
-----
124
The email address to use when committing a branch. Typically takes the form
125
of::
126
127
    email = Full Name <account@hostname.tld>
128
129
editor
130
------
131
The path of the editor that you wish to use if *bzr commit* is run without
2135.1.1 by Matthew Fuller
Correct statement about the precedence of $EDITOR, and mention
132
a commit log message. This setting is trumped by the environment variable
133
$BZR_EDITOR, and overrides $VISUAL and $EDITOR.
1610.2.1 by James Blackwell
Copied in docs for wiki & First round cleanup
134
135
check_signatures
136
----------------
137
Defines the behavior for signatures.
138
139
require
140
    the gnupg signature for revisions must be present and must be valid
141
142
ignore
143
    Do not check gnupg signatures of revisions. 
144
145
check-available
146
    (default) If gnupg signatures for revisions are present, check them.
1861.2.6 by Alexander Belchenko
branding: change Bazaar-NG to Bazaar
147
    Bazaar will fail if it finds a bad signature, but will not fail if
1610.2.1 by James Blackwell
Copied in docs for wiki & First round cleanup
148
    no signature is present
149
150
create_signatures
151
-----------------
152
Defines the behaviour of signing revisions. Has three possible values:
153
always, never and when-requied.
154
155
always
156
    sign every new revision that is committed
157
158
when-required
159
    (default) Sign newly committed revisions only when the branch requires
160
    signed revisions
161
162
never
163
    Refuse to sign newly committed revisions, even if the branch requires signatures
164
165
recurse
166
-------
1770.2.2 by Aaron Bentley
Rename branches.conf to locations.conf
167
Only useful in locations.conf. Defines whether or not the configuration for
1610.2.1 by James Blackwell
Copied in docs for wiki & First round cleanup
168
this section applies to subdirectories:
169
170
true
171
    (default) This section applies to subdirectories as well
172
173
false
174
    This section only applies to the branch at this directory and not
175
    branches 
176
177
gpg_signing_command
178
-------------------
179
(Default: "gpg"). Which program should be used to sign and check revisions.
180
example::
181
182
    gpg_signing_command = /usr/bin/gnpg
183
2230.3.43 by Aaron Bentley
Update docs
184
185
Branch 6 Options
186
================
187
188
These options apply only to branches that use the "experimental-branch6"
189
format.  They are usually set in .bzr/branch/branch.conf automatically, but
190
may be manually set in locations.conf or bazaar.conf
191
192
append_revisions_only
193
---------------------
194
If set to "True", then revisions can only be appended to the log, not removed.
195
A branch with this setting enabled can only pull from another branch if the
196
other branch's log is a longer version of its own.
197
2230.3.46 by Aaron Bentley
tweak config docs
198
This is normally set by ``bzr init --append-revisions-only``.
2230.3.43 by Aaron Bentley
Update docs
199
200
parent_location
201
---------------
202
If present, the location of the default branch for pull or merge.
203
2230.3.46 by Aaron Bentley
tweak config docs
204
This is normally set by ``pull --remember`` or ``merge --remember``
2230.3.43 by Aaron Bentley
Update docs
205
206
push_location
207
-------------
2230.3.46 by Aaron Bentley
tweak config docs
208
If present, the location of the default branch for push.  This is normally
209
set by ``push --remember``.
2230.3.43 by Aaron Bentley
Update docs
210
211
bound_location
212
--------------
2230.3.46 by Aaron Bentley
tweak config docs
213
The location that commits should go to when acting as a checkout.  (Normally
214
set by ``bind``)
2230.3.43 by Aaron Bentley
Update docs
215
216
bound
217
-----
218
If set to "True", the branch should act as a checkout, and push each commit to
2230.3.46 by Aaron Bentley
tweak config docs
219
the bound_location.  (Normally set by ``bind``/``unbind``.)