/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to doc/configuration.txt

  • Committer: John Arbash Meinel
  • Date: 2006-10-16 05:08:45 UTC
  • mto: This revision was merged to the branch mainline in revision 2089.
  • Revision ID: john@arbash-meinel.com-20061016050845-a2bc6be4f3a35539
Create a deprecated bzrlib.tree.RevisionTree() in favor of bzrlib.revisiontree.RevisionTree()

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
Configuration Settings
2
 
=======================
3
 
 
4
 
Environment settings
5
 
---------------------
6
 
 
7
 
While most configuration is handled by configuration files, some options
8
 
which may be semi-permanent can also be controlled through the environment.
9
 
 
10
 
BZR_EMAIL
11
 
~~~~~~~~~
12
 
 
13
 
Override the email id used by Bazaar.  Typical format::
14
 
 
15
 
  "John Doe <jdoe@example.com>"
16
 
 
17
 
See also the ``email`` configuration value.
18
 
 
19
 
BZR_PROGRESS_BAR
20
 
~~~~~~~~~~~~~~~~
21
 
 
22
 
Override the progress display.  Possible values are "none", "dots", "tty"
23
 
 
24
 
BZR_SIGQUIT_PDB
25
 
~~~~~~~~~~~~~~~
26
 
 
27
 
Control whether SIGQUIT behaves normally or invokes a breakin debugger.
28
 
 
29
 
* 0 = Standard SIGQUIT behavior (normally, exit with a core dump)
30
 
* 1 = Invoke breakin debugger (default)
31
 
 
32
 
BZR_HOME
33
 
~~~~~~~~
34
 
 
35
 
Override the home directory used by Bazaar.
36
 
 
37
 
BZR_SSH
38
 
~~~~~~~
39
 
 
40
 
Select a different SSH implementation.
41
 
 
42
 
BZR_PDB
43
 
~~~~~~~
44
 
 
45
 
Control whether to launch a debugger on error.
46
 
 
47
 
* 0 = Standard behavior
48
 
* 1 = Launch debugger
49
 
 
50
 
BZR_REMOTE_PATH
51
 
~~~~~~~~~~~~~~~
52
 
 
53
 
Path to the Bazaar executable to use when using the bzr+ssh protocol.
54
 
 
55
 
See also the ``bzr_remote_path`` configuration value.
56
 
 
57
 
BZR_EDITOR
58
 
~~~~~~~~~~
59
 
 
60
 
Path to the editor Bazaar should use for commit messages, etc.
61
 
 
62
 
BZR_LOG
63
 
~~~~~~~
64
 
 
65
 
Location of the Bazaar log file. You can check the current location by
66
 
running ``bzr version``.
67
 
 
68
 
The log file contains debug information that is useful for diagnosing or
69
 
reporting problems with Bazaar.
70
 
 
71
 
Setting this to ``NUL`` on Windows or ``/dev/null`` on other platforms
72
 
will disable logging.
73
 
 
74
 
 
75
 
BZR_PLUGIN_PATH
76
 
~~~~~~~~~~~~~~~
77
 
 
78
 
The path to the plugins directory that Bazaar should use.
79
 
If not set, Bazaar will search for plugins in:
80
 
 
81
 
* the user specific plugin directory (containing the ``user`` plugins),
82
 
 
83
 
* the bzrlib directory (containing the ``core`` plugins),
84
 
 
85
 
* the site specific plugin directory if applicable (containing
86
 
  the ``site`` plugins).
87
 
 
88
 
If ``BZR_PLUGIN_PATH`` is set in any fashion, it will change the
89
 
the way the plugin are searched. 
90
 
 
91
 
As for the ``PATH`` variables, if multiple directories are
92
 
specified in ``BZR_PLUGIN_PATH`` they should be separated by the
93
 
platform specific appropriate character (':' on Unix/Linux/etc,
94
 
';' on windows)
95
 
 
96
 
By default if ``BZR_PLUGIN_PATH`` is set, it replaces searching
97
 
in ``user``.  However it will continue to search in ``core`` and
98
 
``site`` unless they are explicitly removed.
99
 
 
100
 
If you need to change the order or remove one of these
101
 
directories, you should use special values:
102
 
 
103
 
* ``-user``, ``-core``, ``-site`` will remove the corresponding
104
 
  path from the default values,
105
 
 
106
 
* ``+user``, ``+core``, ``+site`` will add the corresponding path
107
 
  before the remaining default values (and also remove it from
108
 
  the default values).
109
 
 
110
 
Note that the special values 'user', 'core' and 'site' should be
111
 
used literally, they will be substituted by the corresponding,
112
 
platform specific, values.
113
 
 
114
 
The examples below use ':' as the separator, windows users
115
 
should use ';'.
116
 
 
117
 
Overriding the default user plugin directory::
118
 
 
119
 
  BZR_PLUGIN_PATH='/path/to/my/other/plugins'
120
 
 
121
 
Disabling the site directory while retaining the user directory::
122
 
 
123
 
  BZR_PLUGIN_PATH='-site:+user'
124
 
 
125
 
Disabling all plugins (better achieved with --no-plugins)::
126
 
 
127
 
  BZR_PLUGIN_PATH='-user:-core:-site'
128
 
 
129
 
Overriding the default site plugin directory::
130
 
 
131
 
  BZR_PLUGIN_PATH='/path/to/my/site/plugins:-site':+user
132
 
 
133
 
BZR_DISABLE_PLUGINS
134
 
~~~~~~~~~~~~~~~~~~~
135
 
 
136
 
Under special circumstances (mostly when trying to diagnose a
137
 
bug), it's better to disable a plugin (or several) rather than
138
 
uninstalling them completely. Such plugins can be specified in
139
 
the ``BZR_DISABLE_PLUGINS`` environment variable.
140
 
 
141
 
In that case, ``bzr`` will stop loading the specified plugins and
142
 
will raise an import error if they are explicitly imported (by
143
 
another plugin that depends on them for example).
144
 
 
145
 
Disabling ``myplugin`` and ``yourplugin`` is achieved by::
146
 
 
147
 
  BZR_DISABLE_PLUGINS='myplugin:yourplugin'
148
 
 
149
 
BZR_PLUGINS_AT
150
 
~~~~~~~~~~~~~~
151
 
 
152
 
When adding a new feature or working on a bug in a plugin,
153
 
developers often need to use a specific version of a given
154
 
plugin. Since python requires that the directory containing the
155
 
code is named like the plugin itself this make it impossible to
156
 
use arbitrary directory names (using a two-level directory scheme
157
 
is inconvenient). ``BZR_PLUGINS_AT`` allows such directories even
158
 
if they don't appear in ``BZR_PLUGIN_PATH`` .
159
 
 
160
 
Plugins specified in this environment variable takes precedence
161
 
over the ones in ``BZR_PLUGIN_PATH``.
162
 
 
163
 
The variable specified a list of ``plugin_name@plugin path``,
164
 
``plugin_name`` being the name of the plugin as it appears in
165
 
python module paths, ``plugin_path`` being the path to the
166
 
directory containing the plugin code itself
167
 
(i.e. ``plugins/myplugin`` not ``plugins``).  Use ':' as the list
168
 
separator, use ';' on windows.
169
 
 
170
 
Example:
171
 
~~~~~~~~
172
 
 
173
 
Using a specific version of ``myplugin``:
174
 
``BZR_PLUGINS_AT='myplugin@/home/me/bugfixes/123456-myplugin``
175
 
 
176
 
BZRPATH
177
 
~~~~~~~
178
 
 
179
 
The path where Bazaar should look for shell plugin external commands.
180
 
 
181
 
 
182
 
Configuration files
183
 
-------------------
184
 
 
185
 
Location
186
 
~~~~~~~~
187
 
 
188
 
Configuration files are located in ``$HOME/.bazaar`` on Linux/Unix and
189
 
``C:\Documents and Settings\<username>\Application Data\Bazaar\2.0`` on
190
 
Windows. (You can check the location for your system by using
191
 
``bzr version``.)
192
 
 
193
 
There are three primary configuration files in this location:
194
 
 
195
 
* ``bazaar.conf`` describes default configuration options,
196
 
 
197
 
* ``locations.conf`` describes configuration information for
198
 
  specific branch locations,
199
 
 
200
 
* ``authentication.conf`` describes credential information for
201
 
  remote servers.
202
 
 
203
 
Each branch can also contain a configuration file that sets values specific
204
 
to that branch. This file is found at ``.bzr/branch/branch.conf`` within the
205
 
branch. This file is visible to all users of a branch, if you wish to override
206
 
one of the values for a branch with a setting that is specific to you then you
207
 
can do so in ``locations.conf``.
208
 
 
209
 
General format
210
 
~~~~~~~~~~~~~~
211
 
 
 
1
====================
 
2
Bazaar configuration
 
3
====================
 
4
 
 
5
Information on how to configure Bazaar.
 
6
 
 
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
 
11
file, locations.conf, contains configuration information for specific
 
12
branch locations.
 
13
 
 
14
General Format
 
15
==============
212
16
An ini file has three types of contructs: section headers, section
213
17
variables and comments.
214
18
 
215
 
Comments
216
 
^^^^^^^^
217
 
 
 
19
comment
 
20
-------
218
21
A comment is any line that starts with a "#" (sometimes called a "hash
219
22
mark", "pound sign" or "number sign"). Comment lines are ignored by
220
23
Bazaar when parsing ini files.
221
24
 
222
 
Section headers
223
 
^^^^^^^^^^^^^^^
224
 
 
 
25
section header
 
26
--------------
225
27
A section header is a word enclosed in brackets that starts at the begining
226
 
of a line.  A typical section header looks like this::
 
28
of a line, typical section headers look like this::
227
29
 
228
30
    [DEFAULT]
229
31
 
230
 
The only valid section headers for bazaar.conf currently are [DEFAULT] and
231
 
[ALIASES].  Section headers are case sensitive. The default section provides for
232
 
setting variables which can be overridden with the branch config file.
 
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.
233
35
 
234
 
For ``locations.conf``, the variables from the section with the
235
 
longest matching section header are used to the exclusion of other
236
 
potentially valid section headers. A section header uses the path for
237
 
the branch as the section header. Some examples include::
 
36
For locations.conf, the variables from the section with the longest matching
 
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::
238
40
 
239
41
    [http://mybranches.isp.com/~jdoe/branchdir]
240
42
    [/home/jdoe/branches/]
241
43
 
242
44
 
243
 
Section variables
244
 
^^^^^^^^^^^^^^^^^
 
45
 
 
46
section variables
 
47
-----------------
245
48
 
246
49
A section variable resides within a section. A section variable contains a
247
 
variable name, an equals sign and a value.  For example::
 
50
variable name, an equals sign and a value and generally takes the following
 
51
form::
248
52
 
249
53
    email            = John Doe <jdoe@isp.com>
250
54
    check_signatures = require
251
55
 
252
56
 
253
 
Variable policies
254
 
^^^^^^^^^^^^^^^^^
255
 
 
256
 
Variables defined in a section affect the named directory or URL plus
257
 
any locations they contain.  Policies can be used to change how a
258
 
variable value is interpreted for contained locations.  Currently
259
 
there are three policies available:
260
 
 
261
 
 none:
262
 
   the value is interpreted the same for contained locations.  This is
263
 
   the default behaviour.
264
 
 norecurse:
265
 
   the value is only used for the exact location specified by the
266
 
   section name.
267
 
 appendpath:
268
 
   for contained locations, any additional path components are
269
 
   appended to the value.
270
 
 
271
 
Policies are specified by keys with names of the form "$var:policy".
272
 
For example, to define the push location for a tree of branches, the
273
 
following could be used::
274
 
 
275
 
  [/top/location]
276
 
  push_location = sftp://example.com/location
277
 
  push_location:policy = appendpath
278
 
 
279
 
With this configuration, the push location for ``/top/location/branch1``
280
 
would be ``sftp://example.com/location/branch1``.
281
 
 
282
 
 
283
57
The main configuration file, bazaar.conf
284
 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
58
----------------------------------------
285
59
 
286
 
``bazaar.conf`` allows two sections: ``[DEFAULT]`` and ``[ALIASES]``.
287
 
The default section contains the default
 
60
The main configuration file, $HOME/.bazaar/bazaar.conf, only allows one
 
61
section called '''[DEFAULT]'''. This default section contains the default
288
62
configuration options for all branches. The default section can be
289
 
overriden by providing a branch-specific section in ``locations.conf``.
 
63
overriden by providing a branch specific section in locations.conf.
290
64
 
291
 
A typical ``bazaar.conf`` section often looks like the following::
 
65
A typical bazaar.conf section often looks like the following::
292
66
 
293
67
    [DEFAULT]
294
68
    email             = John Doe <jdoe@isp.com>
296
70
    check_signatures  = check-available
297
71
    create_signatures = when-required
298
72
 
299
 
 
300
 
The branch location configuration file, locations.conf
301
 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
302
 
 
303
 
``locations.conf`` allows one to specify overriding settings for
304
 
a specific branch. The format is almost identical to the default section in
305
 
bazaar.conf with one significant change: The section header, instead of saying
306
 
default, will be the path to a branch that you wish to override a value
307
 
for. The '?' and '*' wildcards are supported::
 
73
$HOME/.bazaar/locations.conf allows one to specify overriding settings for a
 
74
specific branch. The format is almost identical to the default section in
 
75
bazaar.conf with one significant change: The section header, instead of
 
76
saying default, will be the path to a branch that you wish to override a
 
77
value for. The ? and * wildcards are supported::
308
78
 
309
79
    [/home/jdoe/branches/nethack]
310
80
    email = Nethack Admin <nethack@nethack.com>
316
86
    [http://bazaar-vcs.org/bzr/*]
317
87
    check_signatures  = require
318
88
 
319
 
The authentication configuration file, authentication.conf
320
 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
321
 
 
322
 
``authentication.conf`` allows one to specify credentials for
323
 
remote servers. This can be used for all the supported transports and any part
324
 
of bzr that requires authentication (smtp for example).
325
 
 
326
 
The syntax of the file obeys the same rules as the others except for the
327
 
variable policies which don't apply.
328
 
 
329
 
For more information on the possible uses of the authentication configuration
330
 
file see :doc:`authentication-help`.
331
 
 
332
 
 
333
 
Common variable options
334
 
-----------------------
335
 
 
336
 
debug_flags
337
 
~~~~~~~~~~~
338
 
 
339
 
A comma-separated list of debugging options to turn on.  The same values
340
 
can be used as with the -D command-line option (see `help global-options`).
341
 
For example::
342
 
 
343
 
    debug_flags = hpss
 
89
Common Variable options
 
90
=======================
344
91
 
345
92
email
346
 
~~~~~
347
 
 
 
93
-----
348
94
The email address to use when committing a branch. Typically takes the form
349
95
of::
350
96
 
351
97
    email = Full Name <account@hostname.tld>
352
98
 
353
99
editor
354
 
~~~~~~
355
 
 
 
100
------
356
101
The path of the editor that you wish to use if *bzr commit* is run without
357
 
a commit message. This setting is trumped by the environment variable
358
 
``BZR_EDITOR``, and overrides the ``VISUAL`` and ``EDITOR`` environment
359
 
variables.
360
 
 
361
 
log_format
362
 
~~~~~~~~~~
363
 
 
364
 
The default log format to use. Standard log formats are ``long``, ``short``
365
 
and ``line``. Additional formats may be provided by plugins. The default
366
 
value is ``long``.
 
102
a commit log message. This setting is trumped by the environment variables
 
103
$BZR_EDITOR or $EDITOR.
367
104
 
368
105
check_signatures
369
 
~~~~~~~~~~~~~~~~
370
 
 
 
106
----------------
371
107
Defines the behavior for signatures.
372
108
 
373
109
require
374
 
    The gnupg signature for revisions must be present and must be valid.
 
110
    the gnupg signature for revisions must be present and must be valid
375
111
 
376
112
ignore
377
 
    Do not check gnupg signatures of revisions.
 
113
    Do not check gnupg signatures of revisions. 
378
114
 
379
115
check-available
380
116
    (default) If gnupg signatures for revisions are present, check them.
381
117
    Bazaar will fail if it finds a bad signature, but will not fail if
382
 
    no signature is present.
 
118
    no signature is present
383
119
 
384
120
create_signatures
385
 
~~~~~~~~~~~~~~~~~
386
 
 
387
 
Defines the behaviour of signing revisions.
 
121
-----------------
 
122
Defines the behaviour of signing revisions. Has three possible values:
 
123
always, never and when-requied.
388
124
 
389
125
always
390
 
    Sign every new revision that is committed.
 
126
    sign every new revision that is committed
391
127
 
392
128
when-required
393
129
    (default) Sign newly committed revisions only when the branch requires
394
 
    signed revisions.
 
130
    signed revisions
395
131
 
396
132
never
397
 
    Refuse to sign newly committed revisions, even if the branch
398
 
    requires signatures.
 
133
    Refuse to sign newly committed revisions, even if the branch requires signatures
399
134
 
400
135
recurse
401
 
~~~~~~~
402
 
 
403
 
Only useful in ``locations.conf``. Defines whether or not the
404
 
configuration for this section applies to subdirectories:
 
136
-------
 
137
Only useful in locations.conf. Defines whether or not the configuration for
 
138
this section applies to subdirectories:
405
139
 
406
140
true
407
 
    (default) This section applies to subdirectories as well.
 
141
    (default) This section applies to subdirectories as well
408
142
 
409
143
false
410
144
    This section only applies to the branch at this directory and not
411
 
    branches below it.
 
145
    branches 
412
146
 
413
147
gpg_signing_command
414
 
~~~~~~~~~~~~~~~~~~~
415
 
 
 
148
-------------------
416
149
(Default: "gpg"). Which program should be used to sign and check revisions.
417
 
For example::
 
150
example::
418
151
 
419
152
    gpg_signing_command = /usr/bin/gnpg
420
153
 
421
 
bzr_remote_path
422
 
~~~~~~~~~~~~~~~
423
 
 
424
 
(Default: "bzr").  The path to the command that should be used to run the smart
425
 
server for bzr.  This value may only be specified in locations.conf, because:
426
 
 
427
 
- it's needed before branch.conf is accessible
428
 
- allowing remote branch.conf files to specify commands would be a security
429
 
  risk
430
 
 
431
 
It is overridden by the BZR_REMOTE_PATH environment variable.
432
 
 
433
 
smtp_server
434
 
~~~~~~~~~~~
435
 
 
436
 
(Default: "localhost"). SMTP server to use when Bazaar needs to send
437
 
email, eg. with ``merge-directive --mail-to``, or the bzr-email plugin.
438
 
 
439
 
smtp_username, smtp_password
440
 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
441
 
 
442
 
User and password to authenticate to the SMTP server. If smtp_username
443
 
is set, and smtp_password is not, Bazaar will prompt for a password.
444
 
These settings are only needed if the SMTP server requires authentication
445
 
to send mail.
446
 
 
447
 
mail_client
448
 
~~~~~~~~~~~
449
 
 
450
 
A mail client to use for sending merge requests.
451
 
By default, bzr will try to use ``mapi`` on Windows.  On other platforms, it
452
 
will try ``xdg-email``. If either of these fails, it will fall back to
453
 
``editor``.
454
 
 
455
 
Supported values for specific clients:
456
 
 
457
 
:claws: Use Claws.  This skips a dialog for attaching files.
458
 
:evolution: Use Evolution.
459
 
:kmail: Use KMail.
460
 
:mutt: Use Mutt.
461
 
:thunderbird: Use Mozilla Thunderbird or Icedove.  For Thunderbird/Icedove 1.5,
462
 
    this works around some bugs that xdg-email doesn't handle.
463
 
 
464
 
Supported generic values are:
465
 
 
466
 
:default: See above.
467
 
:editor: Use your editor to compose the merge request.  This also uses
468
 
    your commit id, (see ``bzr whoami``), smtp_server and (optionally)
469
 
    smtp_username and smtp_password.
470
 
:mapi: Use your preferred e-mail client on Windows.
471
 
:xdg-email: Use xdg-email to run your preferred mail program
472
 
 
473
 
submit_branch
474
 
~~~~~~~~~~~~~
475
 
 
476
 
The branch you intend to submit your current work to.  This is automatically
477
 
set by ``bzr send``, and is also used by the ``submit:`` revision spec.  This
478
 
should usually be set on a per-branch or per-location basis.
479
 
 
480
 
public_branch
481
 
~~~~~~~~~~~~~
482
 
 
483
 
A publically-accessible version of this branch (implying that this version is
484
 
not publically-accessible).  Used (and set) by ``bzr send``.
485
 
 
486
 
suppress_warnings
487
 
~~~~~~~~~~~~~~~~~
488
 
 
489
 
A list of strings, each string represent a warning that can be emitted by
490
 
bzr. Mentioning a warning in this list tells bzr to not emit it.
491
 
 
492
 
Valid values:
493
 
 
494
 
* ``format_deprecation``:
495
 
    whether the format deprecation warning is shown on repositories that are
496
 
    using deprecated formats.
497
 
 
498
 
 
499
 
Branch type specific options
500
 
----------------------------
501
 
 
502
 
These options apply only to branches that use the ``dirstate-tags`` or
503
 
later format.  They
504
 
are usually set in ``.bzr/branch/branch.conf`` automatically, but may be
505
 
manually set in ``locations.conf`` or ``bazaar.conf``.
506
 
 
507
 
append_revisions_only
508
 
~~~~~~~~~~~~~~~~~~~~~
509
 
 
510
 
If set to "True" then revisions can only be appended to the log, not
511
 
removed.  A branch with this setting enabled can only pull from another
512
 
branch if the other branch's log is a longer version of its own.  This is
513
 
normally set by ``bzr init --append-revisions-only``. If you set it
514
 
manually, use either 'True' or 'False' (case-sensitive) to maintain
515
 
compatibility with previous bzr versions (older than 2.2).
516
 
 
517
 
parent_location
518
 
~~~~~~~~~~~~~~~
519
 
 
520
 
If present, the location of the default branch for pull or merge.
521
 
This option is normally set by ``pull --remember`` or ``merge
522
 
--remember``.
523
 
 
524
 
push_location
525
 
~~~~~~~~~~~~~
526
 
 
527
 
If present, the location of the default branch for push.  This option
528
 
is normally set by ``push --remember``.
529
 
 
530
 
push_strict
531
 
~~~~~~~~~~~
532
 
 
533
 
If present, defines the ``--strict`` option default value for checking
534
 
uncommitted changes before pushing.
535
 
 
536
 
dpush_strict
537
 
~~~~~~~~~~~~
538
 
 
539
 
If present, defines the ``--strict`` option default value for checking
540
 
uncommitted changes before pushing into a different VCS without any
541
 
custom bzr metadata.
542
 
 
543
 
bound_location
544
 
~~~~~~~~~~~~~~
545
 
 
546
 
The location that commits should go to when acting as a checkout.
547
 
This option is normally set by ``bind``.
548
 
 
549
 
bound
550
 
~~~~~
551
 
 
552
 
If set to "True", the branch should act as a checkout, and push each commit to
553
 
the bound_location.  This option is normally set by ``bind``/``unbind``.
554
 
 
555
 
send_strict
556
 
~~~~~~~~~~~
557
 
 
558
 
If present, defines the ``--strict`` option default value for checking
559
 
uncommitted changes before sending a merge directive.
560