doc/hgrc.5.txt
author Erik Zielke <ez@aragost.com>
Thu, 23 Sep 2010 15:18:10 +0200
changeset 12539 dece1f46f7a2
parent 12384 ffcceca7406d
child 12593 01c373762b76
permissions -rw-r--r--
mq: removed return from callers to patchheader.qseries Some callers to patchheader.qseries returned the value further, but pathcheader.qseries does not explicitly return anything. It was confusing this was returned further
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
     1
======
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
     2
 hgrc
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
     3
======
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
     4
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
     5
---------------------------------
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
     6
configuration files for Mercurial
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
     7
---------------------------------
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
     8
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
     9
:Author:         Bryan O'Sullivan <bos@serpentine.com>
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
    10
:Organization:   Mercurial
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
    11
:Manual section: 5
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
    12
:Manual group:   Mercurial Manual
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
    13
9422
ec26d6986d85 doc: add TOC to hg.1.html and hgrc.5.html
Martin Geisler <mg@lazybytes.net>
parents: 9381
diff changeset
    14
.. contents::
ec26d6986d85 doc: add TOC to hg.1.html and hgrc.5.html
Martin Geisler <mg@lazybytes.net>
parents: 9381
diff changeset
    15
   :backlinks: top
ec26d6986d85 doc: add TOC to hg.1.html and hgrc.5.html
Martin Geisler <mg@lazybytes.net>
parents: 9381
diff changeset
    16
   :class: htmlonly
ec26d6986d85 doc: add TOC to hg.1.html and hgrc.5.html
Martin Geisler <mg@lazybytes.net>
parents: 9381
diff changeset
    17
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    18
9792
dd1a95ccbe07 doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents: 9784
diff changeset
    19
Synopsis
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    20
--------
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    21
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    22
The Mercurial system uses a set of configuration files to control
8773
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
    23
aspects of its behavior.
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    24
9792
dd1a95ccbe07 doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents: 9784
diff changeset
    25
Files
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    26
-----
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    27
1583
32a4e6802864 make mercurial look in more places for config files.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1485
diff changeset
    28
Mercurial reads configuration data from several files, if they exist.
32a4e6802864 make mercurial look in more places for config files.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1485
diff changeset
    29
The names of these files depend on the system on which Mercurial is
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
    30
installed. ``*.rc`` files from a single directory are read in
8782
d19ab9a56bf4 doc: wrap man pages after fixing quoting
Martin Geisler <mg@lazybytes.net>
parents: 8781
diff changeset
    31
alphabetical order, later ones overriding earlier ones. Where multiple
9659
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    32
paths are given below, settings from earlier paths override later
8782
d19ab9a56bf4 doc: wrap man pages after fixing quoting
Martin Geisler <mg@lazybytes.net>
parents: 8781
diff changeset
    33
ones.
951
859de3ebc041 Read global config file /etc/mercurial/hgrc and fix reading hgrc on Windows.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 938
diff changeset
    34
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
    35
| (Unix, Windows) ``<repo>/.hg/hgrc``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
    36
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    37
    Per-repository configuration options that only apply in a
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
    38
    particular repository. This file is not version-controlled, and
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
    39
    will not get transferred during a "clone" operation. Options in
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
    40
    this file override options in all other configuration files. On
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
    41
    Unix, most of this file will be ignored if it doesn't belong to a
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
    42
    trusted user or to a trusted group. See the documentation for the
9702
a9d15bf7efe2 doc: add some internal links to man pages
Martin Geisler <mg@lazybytes.net>
parents: 9701
diff changeset
    43
    trusted_ section below for more details.
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    44
9659
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    45
| (Unix) ``$HOME/.hgrc``
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    46
| (Windows) ``%USERPROFILE%\.hgrc``
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    47
| (Windows) ``%USERPROFILE%\Mercurial.ini``
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    48
| (Windows) ``%HOME%\.hgrc``
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    49
| (Windows) ``%HOME%\Mercurial.ini``
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    50
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    51
    Per-user configuration file(s), for the user running Mercurial. On
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    52
    Windows 9x, ``%HOME%`` is replaced by ``%APPDATA%``. Options in these
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    53
    files apply to all Mercurial commands executed by this user in any
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    54
    directory. Options in these files override per-system and per-installation
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    55
    options.
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    56
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    57
| (Unix) ``/etc/mercurial/hgrc``
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    58
| (Unix) ``/etc/mercurial/hgrc.d/*.rc``
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    59
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    60
    Per-system configuration files, for the system on which Mercurial
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    61
    is running. Options in these files apply to all Mercurial commands
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    62
    executed by any user in any directory. Options in these files
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    63
    override per-installation options.
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    64
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    65
| (Unix) ``<install-root>/etc/mercurial/hgrc``
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    66
| (Unix) ``<install-root>/etc/mercurial/hgrc.d/*.rc``
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    67
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    68
    Per-installation configuration files, searched for in the
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    69
    directory where Mercurial is installed. ``<install-root>`` is the
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    70
    parent directory of the **hg** executable (or symlink) being run. For
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    71
    example, if installed in ``/shared/tools/bin/hg``, Mercurial will look
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    72
    in ``/shared/tools/etc/mercurial/hgrc``. Options in these files apply
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    73
    to all Mercurial commands executed by any user in any directory.
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    74
10388
07bd7608a0ea win32: allow hgrc.d on Windows
Steve Borho <steve@borho.org>
parents: 10285
diff changeset
    75
| (Windows) ``<install-dir>\Mercurial.ini``
07bd7608a0ea win32: allow hgrc.d on Windows
Steve Borho <steve@borho.org>
parents: 10285
diff changeset
    76
| (Windows) ``<install-dir>\hgrc.d\*.rc``
9659
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    77
| (Windows) ``HKEY_LOCAL_MACHINE\SOFTWARE\Mercurial``
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    78
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    79
    Per-installation/system configuration files, for the system on
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    80
    which Mercurial is running. Options in these files apply to all
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    81
    Mercurial commands executed by any user in any directory. Registry
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    82
    keys contain PATH-like strings, every part of which must reference
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    83
    a ``Mercurial.ini`` file or be a directory where ``*.rc`` files will
10388
07bd7608a0ea win32: allow hgrc.d on Windows
Steve Borho <steve@borho.org>
parents: 10285
diff changeset
    84
    be read.  Mercurial checks each of these locations in the specified
07bd7608a0ea win32: allow hgrc.d on Windows
Steve Borho <steve@borho.org>
parents: 10285
diff changeset
    85
    order until one or more configuration files are detected.  If the
10391
935ef1836b2f hgrc.5: Fix a typo
Steve Borho <steve@borho.org>
parents: 10388
diff changeset
    86
    pywin32 extensions are not installed, Mercurial will only look for
10388
07bd7608a0ea win32: allow hgrc.d on Windows
Steve Borho <steve@borho.org>
parents: 10285
diff changeset
    87
    site-wide configuration in ``C:\Mercurial\Mercurial.ini``.
9659
f53c549237ca hgrc.5.txt: mention hgrc categories with higher precedence first
Adrian Buehlmann <adrian@cadifra.com>
parents: 9630
diff changeset
    88
9792
dd1a95ccbe07 doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents: 9784
diff changeset
    89
Syntax
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    90
------
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    91
9624
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
    92
A configuration file consists of sections, led by a ``[section]`` header
11220
157f9de9ad2a doc: clarify that keys can be overridden
Angel Ezquerra
parents: 10980
diff changeset
    93
and followed by ``name = value`` entries (sometimes called
157f9de9ad2a doc: clarify that keys can be overridden
Angel Ezquerra
parents: 10980
diff changeset
    94
``configuration keys``)::
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    95
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    96
    [spam]
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    97
    eggs=ham
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    98
    green=
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    99
       eggs
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   100
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   101
Each line contains one entry. If the lines that follow are indented,
9701
0f235a427f95 hgrc.5: combined short paragraphs into one
Martin Geisler <mg@lazybytes.net>
parents: 9700
diff changeset
   102
they are treated as continuations of that entry. Leading whitespace is
0f235a427f95 hgrc.5: combined short paragraphs into one
Martin Geisler <mg@lazybytes.net>
parents: 9700
diff changeset
   103
removed from values. Empty lines are skipped. Lines beginning with
0f235a427f95 hgrc.5: combined short paragraphs into one
Martin Geisler <mg@lazybytes.net>
parents: 9700
diff changeset
   104
``#`` or ``;`` are ignored and may be used to provide comments.
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   105
11220
157f9de9ad2a doc: clarify that keys can be overridden
Angel Ezquerra
parents: 10980
diff changeset
   106
Configuration keys can be set multiple times, in which case mercurial
157f9de9ad2a doc: clarify that keys can be overridden
Angel Ezquerra
parents: 10980
diff changeset
   107
will use the value that was configured last. As an example::
157f9de9ad2a doc: clarify that keys can be overridden
Angel Ezquerra
parents: 10980
diff changeset
   108
157f9de9ad2a doc: clarify that keys can be overridden
Angel Ezquerra
parents: 10980
diff changeset
   109
    [spam]
157f9de9ad2a doc: clarify that keys can be overridden
Angel Ezquerra
parents: 10980
diff changeset
   110
    eggs=large
157f9de9ad2a doc: clarify that keys can be overridden
Angel Ezquerra
parents: 10980
diff changeset
   111
    ham=serrano
157f9de9ad2a doc: clarify that keys can be overridden
Angel Ezquerra
parents: 10980
diff changeset
   112
    eggs=small
157f9de9ad2a doc: clarify that keys can be overridden
Angel Ezquerra
parents: 10980
diff changeset
   113
157f9de9ad2a doc: clarify that keys can be overridden
Angel Ezquerra
parents: 10980
diff changeset
   114
This would set the configuration key named ``eggs`` to ``small``.
157f9de9ad2a doc: clarify that keys can be overridden
Angel Ezquerra
parents: 10980
diff changeset
   115
11221
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   116
It is also possible to define a section multiple times. A section can
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   117
be redefined on the same and/or on different hgrc files. For example::
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   118
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   119
    [foo]
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   120
    eggs=large
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   121
    ham=serrano
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   122
    eggs=small
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   123
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   124
    [bar]
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   125
    eggs=ham
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   126
    green=
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   127
       eggs
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   128
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   129
    [foo]
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   130
    ham=prosciutto
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   131
    eggs=medium
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   132
    bread=toasted
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   133
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   134
This would set the ``eggs``, ``ham``, and ``bread`` configuration keys
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   135
of the ``foo`` section to ``medium``, ``prosciutto``, and ``toasted``,
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   136
respectively. As you can see there only thing that matters is the last
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   137
value that was set for each of the configuration keys.
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   138
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   139
If a configuration key is set multiple times in different
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   140
configuration files the final value will depend on the order in which
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   141
the different configuration files are read, with settings from earlier
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   142
paths overriding later ones as described on the ``Files`` section
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   143
above.
e655b378ce73 doc: clarify that sections can be split
Angel Ezquerra
parents: 11220
diff changeset
   144
9624
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   145
A line of the form ``%include file`` will include ``file`` into the
9376
68f393788895 hgrc.5: document %include directive
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   146
current configuration file. The inclusion is recursive, which means
68f393788895 hgrc.5: document %include directive
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   147
that included files can include other files. Filenames are relative to
9377
4481ba0957c5 Merge with crew-stable
Martin Geisler <mg@lazybytes.net>
parents: 9363 9376
diff changeset
   148
the configuration file in which the ``%include`` directive is found.
11226
b9e89fc5c7f1 doc: document expansion of %include and ui.username
Martin Geisler <mg@aragost.com>
parents: 11222
diff changeset
   149
Environment variables and ``~user`` constructs are expanded in
b9e89fc5c7f1 doc: document expansion of %include and ui.username
Martin Geisler <mg@aragost.com>
parents: 11222
diff changeset
   150
``file``. This lets you do something like::
b9e89fc5c7f1 doc: document expansion of %include and ui.username
Martin Geisler <mg@aragost.com>
parents: 11222
diff changeset
   151
b9e89fc5c7f1 doc: document expansion of %include and ui.username
Martin Geisler <mg@aragost.com>
parents: 11222
diff changeset
   152
  %include ~/.hgrc.d/$HOST.rc
b9e89fc5c7f1 doc: document expansion of %include and ui.username
Martin Geisler <mg@aragost.com>
parents: 11222
diff changeset
   153
b9e89fc5c7f1 doc: document expansion of %include and ui.username
Martin Geisler <mg@aragost.com>
parents: 11222
diff changeset
   154
to include a different configuration file on each computer you use.
9376
68f393788895 hgrc.5: document %include directive
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   155
9624
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   156
A line with ``%unset name`` will remove ``name`` from the current
9380
e499a4147c66 hgrc.5: document %unset directive
Martin Geisler <mg@lazybytes.net>
parents: 9376
diff changeset
   157
section, if it has been set previously.
e499a4147c66 hgrc.5: document %unset directive
Martin Geisler <mg@lazybytes.net>
parents: 9376
diff changeset
   158
10980
30ae8174a597 hgrc.5: mention lists as well
Martin Geisler <mg@lazybytes.net>
parents: 10978
diff changeset
   159
The values are either free-form text strings, lists of text strings,
10982
0a548640e012 ui: support quotes in configlist (issue2147)
Henrik Stuart <hg@hstuart.dk>
parents: 10981
diff changeset
   160
or Boolean values. Boolean values can be set to true using any of "1",
0a548640e012 ui: support quotes in configlist (issue2147)
Henrik Stuart <hg@hstuart.dk>
parents: 10981
diff changeset
   161
"yes", "true", or "on" and to false using "0", "no", "false", or "off"
0a548640e012 ui: support quotes in configlist (issue2147)
Henrik Stuart <hg@hstuart.dk>
parents: 10981
diff changeset
   162
(all case insensitive).
10978
6a3377851d45 hgrc.5: describe form of config values
Martin Geisler <mg@lazybytes.net>
parents: 10485
diff changeset
   163
10982
0a548640e012 ui: support quotes in configlist (issue2147)
Henrik Stuart <hg@hstuart.dk>
parents: 10981
diff changeset
   164
List values are separated by whitespace or comma, except when values are
0a548640e012 ui: support quotes in configlist (issue2147)
Henrik Stuart <hg@hstuart.dk>
parents: 10981
diff changeset
   165
placed in double quotation marks::
0a548640e012 ui: support quotes in configlist (issue2147)
Henrik Stuart <hg@hstuart.dk>
parents: 10981
diff changeset
   166
0a548640e012 ui: support quotes in configlist (issue2147)
Henrik Stuart <hg@hstuart.dk>
parents: 10981
diff changeset
   167
  allow_read = "John Doe, PhD", brian, betty
0a548640e012 ui: support quotes in configlist (issue2147)
Henrik Stuart <hg@hstuart.dk>
parents: 10981
diff changeset
   168
0a548640e012 ui: support quotes in configlist (issue2147)
Henrik Stuart <hg@hstuart.dk>
parents: 10981
diff changeset
   169
Quotation marks can be escaped by prefixing them with a backslash. Only
0a548640e012 ui: support quotes in configlist (issue2147)
Henrik Stuart <hg@hstuart.dk>
parents: 10981
diff changeset
   170
quotation marks at the beginning of a word is counted as a quotation
0a548640e012 ui: support quotes in configlist (issue2147)
Henrik Stuart <hg@hstuart.dk>
parents: 10981
diff changeset
   171
(e.g., ``foo"bar baz`` is the list of ``foo"bar`` and ``baz``).
9376
68f393788895 hgrc.5: document %include directive
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   172
9792
dd1a95ccbe07 doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents: 9784
diff changeset
   173
Sections
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   174
--------
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   175
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   176
This section describes the different sections that may appear in a
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   177
Mercurial "hgrc" file, the purpose of each section, its possible keys,
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   178
and their possible values.
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   179
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   180
``alias``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   181
"""""""""
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   182
Defines command aliases.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   183
Aliases allow you to define your own commands in terms of other
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   184
commands (or aliases), optionally including arguments.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   185
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   186
Alias definitions consist of lines of the form::
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   187
8655
21688b8a594b Move alias into core
Brendan Cully <brendan@kublai.com>
parents: 8341
diff changeset
   188
    <alias> = <command> [<argument]...
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   189
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   190
For example, this definition::
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   191
8655
21688b8a594b Move alias into core
Brendan Cully <brendan@kublai.com>
parents: 8341
diff changeset
   192
    latest = log --limit 5
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   193
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   194
creates a new command ``latest`` that shows only the five most recent
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   195
changesets. You can define subsequent aliases using earlier ones::
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   196
8655
21688b8a594b Move alias into core
Brendan Cully <brendan@kublai.com>
parents: 8341
diff changeset
   197
    stable5 = latest -b stable
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   198
9700
26fc6024dd06 doc: use reST note directive
Martin Geisler <mg@lazybytes.net>
parents: 9699
diff changeset
   199
.. note:: It is possible to create aliases with the same names as
26fc6024dd06 doc: use reST note directive
Martin Geisler <mg@lazybytes.net>
parents: 9699
diff changeset
   200
   existing commands, which will then override the original
26fc6024dd06 doc: use reST note directive
Martin Geisler <mg@lazybytes.net>
parents: 9699
diff changeset
   201
   definitions. This is almost always a bad idea!
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   202
8655
21688b8a594b Move alias into core
Brendan Cully <brendan@kublai.com>
parents: 8341
diff changeset
   203
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   204
``auth``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   205
""""""""
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   206
Authentication credentials for HTTP authentication. Each line has
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   207
the following format::
8333
89c80c3dc584 allow http authentication information to be specified in the configuration
Sune Foldager <cryo@cyanite.org>
parents: 8024
diff changeset
   208
89c80c3dc584 allow http authentication information to be specified in the configuration
Sune Foldager <cryo@cyanite.org>
parents: 8024
diff changeset
   209
    <name>.<argument> = <value>
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   210
9835
6a07e74370d7 hgrc.5: mark some words as inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9830
diff changeset
   211
where ``<name>`` is used to group arguments into authentication
6a07e74370d7 hgrc.5: mark some words as inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9830
diff changeset
   212
entries. Example::
8333
89c80c3dc584 allow http authentication information to be specified in the configuration
Sune Foldager <cryo@cyanite.org>
parents: 8024
diff changeset
   213
89c80c3dc584 allow http authentication information to be specified in the configuration
Sune Foldager <cryo@cyanite.org>
parents: 8024
diff changeset
   214
    foo.prefix = hg.intevation.org/mercurial
89c80c3dc584 allow http authentication information to be specified in the configuration
Sune Foldager <cryo@cyanite.org>
parents: 8024
diff changeset
   215
    foo.username = foo
89c80c3dc584 allow http authentication information to be specified in the configuration
Sune Foldager <cryo@cyanite.org>
parents: 8024
diff changeset
   216
    foo.password = bar
89c80c3dc584 allow http authentication information to be specified in the configuration
Sune Foldager <cryo@cyanite.org>
parents: 8024
diff changeset
   217
    foo.schemes = http https
89c80c3dc584 allow http authentication information to be specified in the configuration
Sune Foldager <cryo@cyanite.org>
parents: 8024
diff changeset
   218
8847
7951f385fcb7 url: support client certificate files over HTTPS (issue643)
Henrik Stuart <hg@hstuart.dk>
parents: 8810
diff changeset
   219
    bar.prefix = secure.example.org
7951f385fcb7 url: support client certificate files over HTTPS (issue643)
Henrik Stuart <hg@hstuart.dk>
parents: 8810
diff changeset
   220
    bar.key = path/to/file.key
7951f385fcb7 url: support client certificate files over HTTPS (issue643)
Henrik Stuart <hg@hstuart.dk>
parents: 8810
diff changeset
   221
    bar.cert = path/to/file.cert
7951f385fcb7 url: support client certificate files over HTTPS (issue643)
Henrik Stuart <hg@hstuart.dk>
parents: 8810
diff changeset
   222
    bar.schemes = https
7951f385fcb7 url: support client certificate files over HTTPS (issue643)
Henrik Stuart <hg@hstuart.dk>
parents: 8810
diff changeset
   223
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   224
Supported arguments:
8333
89c80c3dc584 allow http authentication information to be specified in the configuration
Sune Foldager <cryo@cyanite.org>
parents: 8024
diff changeset
   225
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   226
``prefix``
9624
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   227
    Either ``*`` or a URI prefix with or without the scheme part.
8782
d19ab9a56bf4 doc: wrap man pages after fixing quoting
Martin Geisler <mg@lazybytes.net>
parents: 8781
diff changeset
   228
    The authentication entry with the longest matching prefix is used
9624
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   229
    (where ``*`` matches everything and counts as a match of length
8782
d19ab9a56bf4 doc: wrap man pages after fixing quoting
Martin Geisler <mg@lazybytes.net>
parents: 8781
diff changeset
   230
    1). If the prefix doesn't include a scheme, the match is performed
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   231
    against the URI with its scheme stripped as well, and the schemes
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   232
    argument, q.v., is then subsequently consulted.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   233
``username``
8847
7951f385fcb7 url: support client certificate files over HTTPS (issue643)
Henrik Stuart <hg@hstuart.dk>
parents: 8810
diff changeset
   234
    Optional. Username to authenticate with. If not given, and the
12049
e329c250b0ba url: limit expansion to safe auth keys (Issue2328)
Martin Geisler <mg@aragost.com>
parents: 11834
diff changeset
   235
    remote site requires basic or digest authentication, the user will
e329c250b0ba url: limit expansion to safe auth keys (Issue2328)
Martin Geisler <mg@aragost.com>
parents: 11834
diff changeset
   236
    be prompted for it. Environment variables are expanded in the
e329c250b0ba url: limit expansion to safe auth keys (Issue2328)
Martin Geisler <mg@aragost.com>
parents: 11834
diff changeset
   237
    username letting you do ``foo.username = $USER``.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   238
``password``
8847
7951f385fcb7 url: support client certificate files over HTTPS (issue643)
Henrik Stuart <hg@hstuart.dk>
parents: 8810
diff changeset
   239
    Optional. Password to authenticate with. If not given, and the
7951f385fcb7 url: support client certificate files over HTTPS (issue643)
Henrik Stuart <hg@hstuart.dk>
parents: 8810
diff changeset
   240
    remote site requires basic or digest authentication, the user
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   241
    will be prompted for it.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   242
``key``
12049
e329c250b0ba url: limit expansion to safe auth keys (Issue2328)
Martin Geisler <mg@aragost.com>
parents: 11834
diff changeset
   243
    Optional. PEM encoded client certificate key file. Environment
e329c250b0ba url: limit expansion to safe auth keys (Issue2328)
Martin Geisler <mg@aragost.com>
parents: 11834
diff changeset
   244
    variables are expanded in the filename.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   245
``cert``
12049
e329c250b0ba url: limit expansion to safe auth keys (Issue2328)
Martin Geisler <mg@aragost.com>
parents: 11834
diff changeset
   246
    Optional. PEM encoded client certificate chain file. Environment
e329c250b0ba url: limit expansion to safe auth keys (Issue2328)
Martin Geisler <mg@aragost.com>
parents: 11834
diff changeset
   247
    variables are expanded in the filename.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   248
``schemes``
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   249
    Optional. Space separated list of URI schemes to use this
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   250
    authentication entry with. Only used if the prefix doesn't include
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   251
    a scheme. Supported schemes are http and https. They will match
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   252
    static-http and static-https respectively, as well.
8333
89c80c3dc584 allow http authentication information to be specified in the configuration
Sune Foldager <cryo@cyanite.org>
parents: 8024
diff changeset
   253
    Default: https.
89c80c3dc584 allow http authentication information to be specified in the configuration
Sune Foldager <cryo@cyanite.org>
parents: 8024
diff changeset
   254
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   255
If no suitable authentication entry is found, the user is prompted
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   256
for credentials as usual if required by the remote.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   257
8333
89c80c3dc584 allow http authentication information to be specified in the configuration
Sune Foldager <cryo@cyanite.org>
parents: 8024
diff changeset
   258
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   259
``decode/encode``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   260
"""""""""""""""""
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   261
Filters for transforming files on checkout/checkin. This would
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   262
typically be used for newline processing or other
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   263
localization/canonicalization of files.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   264
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   265
Filters consist of a filter pattern followed by a filter command.
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   266
Filter patterns are globs by default, rooted at the repository root.
9624
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   267
For example, to match any file ending in ``.txt`` in the root
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   268
directory only, use the pattern ``*.txt``. To match any file ending
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   269
in ``.c`` anywhere in the repository, use the pattern ``**.c``.
10211
a474f950357b Update test and man page for multiple matching encode/decode filters
Mads Kiilerich <mads@kiilerich.com>
parents: 10209
diff changeset
   270
For each file only the first matching filter applies.
1258
1945754e466b Add file encoding/decoding support
mpm@selenic.com
parents: 1171
diff changeset
   271
9835
6a07e74370d7 hgrc.5: mark some words as inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9830
diff changeset
   272
The filter command can start with a specifier, either ``pipe:`` or
6a07e74370d7 hgrc.5: mark some words as inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9830
diff changeset
   273
``tempfile:``. If no specifier is given, ``pipe:`` is used by default.
1293
a6ffcebd3315 Enhance the file filtering capabilities.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1258
diff changeset
   274
9835
6a07e74370d7 hgrc.5: mark some words as inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9830
diff changeset
   275
A ``pipe:`` command must accept data on stdin and return the transformed
8782
d19ab9a56bf4 doc: wrap man pages after fixing quoting
Martin Geisler <mg@lazybytes.net>
parents: 8781
diff changeset
   276
data on stdout.
1293
a6ffcebd3315 Enhance the file filtering capabilities.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1258
diff changeset
   277
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   278
Pipe example::
1258
1945754e466b Add file encoding/decoding support
mpm@selenic.com
parents: 1171
diff changeset
   279
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   280
  [encode]
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   281
  # uncompress gzip files on checkin to improve delta compression
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   282
  # note: not necessarily a good idea, just an example
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   283
  *.gz = pipe: gunzip
1258
1945754e466b Add file encoding/decoding support
mpm@selenic.com
parents: 1171
diff changeset
   284
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   285
  [decode]
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   286
  # recompress gzip files when writing them to the working dir (we
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   287
  # can safely omit "pipe:", because it's the default)
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   288
  *.gz = gzip
1258
1945754e466b Add file encoding/decoding support
mpm@selenic.com
parents: 1171
diff changeset
   289
9835
6a07e74370d7 hgrc.5: mark some words as inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9830
diff changeset
   290
A ``tempfile:`` command is a template. The string ``INFILE`` is replaced
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   291
with the name of a temporary file that contains the data to be
9835
6a07e74370d7 hgrc.5: mark some words as inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9830
diff changeset
   292
filtered by the command. The string ``OUTFILE`` is replaced with the name
8782
d19ab9a56bf4 doc: wrap man pages after fixing quoting
Martin Geisler <mg@lazybytes.net>
parents: 8781
diff changeset
   293
of an empty temporary file, where the filtered data must be written by
d19ab9a56bf4 doc: wrap man pages after fixing quoting
Martin Geisler <mg@lazybytes.net>
parents: 8781
diff changeset
   294
the command.
1293
a6ffcebd3315 Enhance the file filtering capabilities.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1258
diff changeset
   295
9700
26fc6024dd06 doc: use reST note directive
Martin Geisler <mg@lazybytes.net>
parents: 9699
diff changeset
   296
.. note:: The tempfile mechanism is recommended for Windows systems,
26fc6024dd06 doc: use reST note directive
Martin Geisler <mg@lazybytes.net>
parents: 9699
diff changeset
   297
   where the standard shell I/O redirection operators often have
26fc6024dd06 doc: use reST note directive
Martin Geisler <mg@lazybytes.net>
parents: 9699
diff changeset
   298
   strange effects and may corrupt the contents of your files.
1293
a6ffcebd3315 Enhance the file filtering capabilities.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1258
diff changeset
   299
11269
5f01fd602542 win32text: mark this extension as deprecated
Martin Geisler <mg@aragost.com>
parents: 11226
diff changeset
   300
This filter mechanism is used internally by the ``eol`` extension to
5f01fd602542 win32text: mark this extension as deprecated
Martin Geisler <mg@aragost.com>
parents: 11226
diff changeset
   301
translate line ending characters between Windows (CRLF) and Unix (LF)
5f01fd602542 win32text: mark this extension as deprecated
Martin Geisler <mg@aragost.com>
parents: 11226
diff changeset
   302
format. We suggest you use the ``eol`` extension for convenience.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   303
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   304
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   305
``defaults``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   306
""""""""""""
1293
a6ffcebd3315 Enhance the file filtering capabilities.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1258
diff changeset
   307
9630
24dad078603b doc/hgrc.5.txt: deprecate [defaults]
Adrian Buehlmann <adrian@cadifra.com>
parents: 9624
diff changeset
   308
(defaults are deprecated. Don't use them. Use aliases instead)
24dad078603b doc/hgrc.5.txt: deprecate [defaults]
Adrian Buehlmann <adrian@cadifra.com>
parents: 9624
diff changeset
   309
9835
6a07e74370d7 hgrc.5: mark some words as inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9830
diff changeset
   310
Use the ``[defaults]`` section to define command defaults, i.e. the
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   311
default options/arguments to pass to the specified commands.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   312
11834
a86fd45c1911 hgrc.5: fix "hg hg status" -> "hg status"
Martin Geisler <mg@aragost.com>
parents: 11330
diff changeset
   313
The following example makes :hg:`log` run in verbose mode, and
a86fd45c1911 hgrc.5: fix "hg hg status" -> "hg status"
Martin Geisler <mg@aragost.com>
parents: 11330
diff changeset
   314
:hg:`status` show only the modified files, by default::
5081
ea7b982b6c08 Remove trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents: 4717
diff changeset
   315
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   316
  [defaults]
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   317
  log = -v
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   318
  status = -m
5081
ea7b982b6c08 Remove trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents: 4717
diff changeset
   319
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   320
The actual commands, instead of their aliases, must be used when
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   321
defining command defaults. The command defaults will also be applied
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   322
to the aliases of the commands defined.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   323
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   324
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   325
``diff``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   326
""""""""
3039
77637938d43d add document on command defaults
TK Soh <teekaysoh@yahoo.com>
parents: 3021
diff changeset
   327
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   328
Settings used when displaying diffs. They are all Boolean and
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   329
defaults to False.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   330
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   331
``git``
4011
15955d84bc68 add [diff] section to hgrc documentation
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 3835
diff changeset
   332
    Use git extended diff format.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   333
``nodates``
4011
15955d84bc68 add [diff] section to hgrc documentation
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 3835
diff changeset
   334
    Don't include dates in diff headers.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   335
``showfunc``
4011
15955d84bc68 add [diff] section to hgrc documentation
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 3835
diff changeset
   336
    Show which function each change is in.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   337
``ignorews``
4011
15955d84bc68 add [diff] section to hgrc documentation
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 3835
diff changeset
   338
    Ignore white space when comparing lines.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   339
``ignorewsamount``
4011
15955d84bc68 add [diff] section to hgrc documentation
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 3835
diff changeset
   340
    Ignore changes in the amount of white space.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   341
``ignoreblanklines``
4011
15955d84bc68 add [diff] section to hgrc documentation
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 3835
diff changeset
   342
    Ignore changes whose lines are all blank.
15955d84bc68 add [diff] section to hgrc documentation
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 3835
diff changeset
   343
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   344
``email``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   345
"""""""""
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   346
Settings for extensions that send email messages.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   347
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   348
``from``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   349
    Optional. Email address to use in "From" header and SMTP envelope
2200
9f43b6e24232 move mail sending code into core, so extensions can share it.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2197
diff changeset
   350
    of outgoing messages.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   351
``to``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   352
    Optional. Comma-separated list of recipients' email addresses.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   353
``cc``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   354
    Optional. Comma-separated list of carbon copy recipients'
2691
accadcb4e4b5 email: reflect that recipients are specified as comma-separated list
Christian Ebert <blacktrash@gmx.net>
parents: 2680
diff changeset
   355
    email addresses.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   356
``bcc``
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   357
    Optional. Comma-separated list of blind carbon copy recipients'
10283
2ae7f001b61d hgrc.5: whether bcc is prompted for is up to the extension
Christian Ebert <blacktrash@gmx.net>
parents: 10263
diff changeset
   358
    email addresses.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   359
``method``
9835
6a07e74370d7 hgrc.5: mark some words as inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9830
diff changeset
   360
    Optional. Method to use to send email messages. If value is ``smtp``
9702
a9d15bf7efe2 doc: add some internal links to man pages
Martin Geisler <mg@lazybytes.net>
parents: 9701
diff changeset
   361
    (default), use SMTP (see the SMTP_ section for configuration).
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   362
    Otherwise, use as name of program to run that acts like sendmail
9835
6a07e74370d7 hgrc.5: mark some words as inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9830
diff changeset
   363
    (takes ``-f`` option for sender, list of recipients on command line,
6a07e74370d7 hgrc.5: mark some words as inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9830
diff changeset
   364
    message on stdin). Normally, setting this to ``sendmail`` or
6a07e74370d7 hgrc.5: mark some words as inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9830
diff changeset
   365
    ``/usr/sbin/sendmail`` is enough to use sendmail to send messages.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   366
``charsets``
8773
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   367
    Optional. Comma-separated list of character sets considered
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   368
    convenient for recipients. Addresses, headers, and parts not
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   369
    containing patches of outgoing messages will be encoded in the
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   370
    first character set to which conversion from local encoding
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   371
    (``$HGENCODING``, ``ui.fallbackencoding``) succeeds. If correct
8773
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   372
    conversion fails, the text in question is sent as is. Defaults to
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   373
    empty (explicit) list.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   374
9744
e8990ce2f2d4 hgrc.5: use enumerated list for email charsets
Martin Geisler <mg@lazybytes.net>
parents: 9743
diff changeset
   375
    Order of outgoing email character sets:
7241
421f4cbddd68 hgrc.5: explain order of mail.charsets
Christian Ebert <blacktrash@gmx.net>
parents: 7235
diff changeset
   376
9744
e8990ce2f2d4 hgrc.5: use enumerated list for email charsets
Martin Geisler <mg@lazybytes.net>
parents: 9743
diff changeset
   377
    1. ``us-ascii``: always first, regardless of settings
e8990ce2f2d4 hgrc.5: use enumerated list for email charsets
Martin Geisler <mg@lazybytes.net>
parents: 9743
diff changeset
   378
    2. ``email.charsets``: in order given by user
e8990ce2f2d4 hgrc.5: use enumerated list for email charsets
Martin Geisler <mg@lazybytes.net>
parents: 9743
diff changeset
   379
    3. ``ui.fallbackencoding``: if not in email.charsets
e8990ce2f2d4 hgrc.5: use enumerated list for email charsets
Martin Geisler <mg@lazybytes.net>
parents: 9743
diff changeset
   380
    4. ``$HGENCODING``: if not in email.charsets
e8990ce2f2d4 hgrc.5: use enumerated list for email charsets
Martin Geisler <mg@lazybytes.net>
parents: 9743
diff changeset
   381
    5. ``utf-8``: always last, regardless of settings
2292
903ab41ac7eb allow to send email using sendmail.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2288
diff changeset
   382
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   383
Email example::
2292
903ab41ac7eb allow to send email using sendmail.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2288
diff changeset
   384
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   385
  [email]
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   386
  from = Joseph User <joe.user@example.com>
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   387
  method = /usr/sbin/sendmail
8773
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   388
  # charsets for western Europeans
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   389
  # us-ascii, utf-8 omitted, as they are tried first and last
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   390
  charsets = iso-8859-1, iso-8859-15, windows-1252
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   391
2200
9f43b6e24232 move mail sending code into core, so extensions can share it.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2197
diff changeset
   392
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   393
``extensions``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   394
""""""""""""""
2200
9f43b6e24232 move mail sending code into core, so extensions can share it.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2197
diff changeset
   395
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   396
Mercurial has an extension mechanism for adding new features. To
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   397
enable an extension, create an entry for it in this section.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   398
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   399
If you know that the extension is already in Python's search path,
9624
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   400
you can give the name of the module, followed by ``=``, with nothing
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   401
after the ``=``.
2211
b8b7a79a4d88 document [extensions] in doc/hgrc.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2209
diff changeset
   402
9624
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   403
Otherwise, give a name that you choose, followed by ``=``, followed by
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   404
the path to the ``.py`` file (including the file name extension) that
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   405
defines the extension.
2211
b8b7a79a4d88 document [extensions] in doc/hgrc.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2209
diff changeset
   406
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   407
To explicitly disable an extension that is enabled in an hgrc of
9624
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   408
broader scope, prepend its path with ``!``, as in
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   409
``hgext.foo = !/ext/path`` or ``hgext.foo = !``  when path is not
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   410
supplied.
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   411
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   412
Example for ``~/.hgrc``::
6175
7f9f3233a2c6 add explicit extension disabling syntax to hgrc.5
Steve Borho <steve@borho.org>
parents: 6142
diff changeset
   413
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   414
  [extensions]
8773
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   415
  # (the mq extension will get loaded from Mercurial's path)
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   416
  hgext.mq =
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   417
  # (this extension will get loaded from the file specified)
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   418
  myfeature = ~/.hgext/myfeature.py
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   419
2387
62ce297f214f Expand '~' in path to extensions.
Markus F.X.J. Oberhumer <markus@oberhumer.com>
parents: 2358
diff changeset
   420
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   421
``format``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   422
""""""""""
4163
fe41d9a186ab Allow disabling store format to work with absurdly long filenames
Matt Mackall <mpm@selenic.com>
parents: 4084
diff changeset
   423
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   424
``usestore``
4163
fe41d9a186ab Allow disabling store format to work with absurdly long filenames
Matt Mackall <mpm@selenic.com>
parents: 4084
diff changeset
   425
    Enable or disable the "store" repository format which improves
fe41d9a186ab Allow disabling store format to work with absurdly long filenames
Matt Mackall <mpm@selenic.com>
parents: 4084
diff changeset
   426
    compatibility with systems that fold case or otherwise mangle
fe41d9a186ab Allow disabling store format to work with absurdly long filenames
Matt Mackall <mpm@selenic.com>
parents: 4084
diff changeset
   427
    filenames. Enabled by default. Disabling this option will allow
fe41d9a186ab Allow disabling store format to work with absurdly long filenames
Matt Mackall <mpm@selenic.com>
parents: 4084
diff changeset
   428
    you to store longer filenames in some situations at the expense of
7235
7488a1f14e3c Document config option format.usefncache and improve format.usestore docs.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 7117
diff changeset
   429
    compatibility and ensures that the on-disk format of newly created
7488a1f14e3c Document config option format.usefncache and improve format.usestore docs.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 7117
diff changeset
   430
    repositories will be compatible with Mercurial before version 0.9.4.
7488a1f14e3c Document config option format.usefncache and improve format.usestore docs.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 7117
diff changeset
   431
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   432
``usefncache``
7235
7488a1f14e3c Document config option format.usefncache and improve format.usestore docs.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 7117
diff changeset
   433
    Enable or disable the "fncache" repository format which enhances
7488a1f14e3c Document config option format.usefncache and improve format.usestore docs.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 7117
diff changeset
   434
    the "store" repository format (which has to be enabled to use
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   435
    fncache) to allow longer filenames and avoids using Windows
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   436
    reserved names, e.g. "nul". Enabled by default. Disabling this
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   437
    option ensures that the on-disk format of newly created
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   438
    repositories will be compatible with Mercurial before version 1.1.
4163
fe41d9a186ab Allow disabling store format to work with absurdly long filenames
Matt Mackall <mpm@selenic.com>
parents: 4084
diff changeset
   439
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   440
``merge-patterns``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   441
""""""""""""""""""
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   442
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   443
This section specifies merge tools to associate with particular file
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   444
patterns. Tools matched here will take precedence over the default
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   445
merge tool. Patterns are globs by default, rooted at the repository
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   446
root.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   447
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   448
Example::
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   449
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   450
  [merge-patterns]
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   451
  **.c = kdiff3
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   452
  **.jpg = myimgmerge
6010
83d193a513c8 add merge sections to hgrc.5
Steve Borho <steve@borho.org>
parents: 5997
diff changeset
   453
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   454
``merge-tools``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   455
"""""""""""""""
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   456
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   457
This section configures external merge tools to use for file-level
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   458
merges.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   459
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   460
Example ``~/.hgrc``::
6010
83d193a513c8 add merge sections to hgrc.5
Steve Borho <steve@borho.org>
parents: 5997
diff changeset
   461
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   462
  [merge-tools]
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   463
  # Override stock tool location
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   464
  kdiff3.executable = ~/bin/kdiff3
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   465
  # Specify command line
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   466
  kdiff3.args = $base $local $other -o $output
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   467
  # Give higher priority
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   468
  kdiff3.priority = 1
6010
83d193a513c8 add merge sections to hgrc.5
Steve Borho <steve@borho.org>
parents: 5997
diff changeset
   469
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   470
  # Define new tool
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   471
  myHtmlTool.args = -m $local $other $base $output
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   472
  myHtmlTool.regkey = Software\FooSoftware\HtmlMerge
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   473
  myHtmlTool.priority = 1
6010
83d193a513c8 add merge sections to hgrc.5
Steve Borho <steve@borho.org>
parents: 5997
diff changeset
   474
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   475
Supported arguments:
6445
a1db3d8b9b8a hgrc.5: fix subsection formatting
Christian Ebert <blacktrash@gmx.net>
parents: 6325
diff changeset
   476
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   477
``priority``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   478
  The priority in which to evaluate this tool.
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   479
  Default: 0.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   480
``executable``
10485
677fee0a0604 hgrc.5: document use of environment variables on Windows
Steve Borho <steve@borho.org>
parents: 10419
diff changeset
   481
  Either just the name of the executable or its pathname.  On Windows,
677fee0a0604 hgrc.5: document use of environment variables on Windows
Steve Borho <steve@borho.org>
parents: 10419
diff changeset
   482
  the path can use environment variables with ${ProgramFiles} syntax.
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   483
  Default: the tool name.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   484
``args``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   485
  The arguments to pass to the tool executable. You can refer to the
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   486
  files being merged as well as the output file through these
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   487
  variables: ``$base``, ``$local``, ``$other``, ``$output``.
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   488
  Default: ``$local $base $other``
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   489
``premerge``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   490
  Attempt to run internal non-interactive 3-way merge tool before
11146
523330d567cf merge: tool.premerge=keep will leave premerge markers in $local
David Champion <dgc@uchicago.edu>
parents: 10997
diff changeset
   491
  launching external tool.  Options are ``true``, ``false``, or ``keep``
523330d567cf merge: tool.premerge=keep will leave premerge markers in $local
David Champion <dgc@uchicago.edu>
parents: 10997
diff changeset
   492
  to leave markers in the file if the premerge fails.
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   493
  Default: True
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   494
``binary``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   495
  This tool can merge binary files. Defaults to False, unless tool
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   496
  was selected by file pattern match.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   497
``symlink``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   498
  This tool can merge symlinks. Defaults to False, even if tool was
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   499
  selected by file pattern match.
11148
a912f26777d3 merge: introduce tool.check parameter
David Champion <dgc@uchicago.edu>
parents: 11146
diff changeset
   500
``check``
a912f26777d3 merge: introduce tool.check parameter
David Champion <dgc@uchicago.edu>
parents: 11146
diff changeset
   501
  A list of merge success-checking options:
a912f26777d3 merge: introduce tool.check parameter
David Champion <dgc@uchicago.edu>
parents: 11146
diff changeset
   502
a912f26777d3 merge: introduce tool.check parameter
David Champion <dgc@uchicago.edu>
parents: 11146
diff changeset
   503
  ``changed``
a912f26777d3 merge: introduce tool.check parameter
David Champion <dgc@uchicago.edu>
parents: 11146
diff changeset
   504
    Ask whether merge was successful when the merged file shows no changes.
a912f26777d3 merge: introduce tool.check parameter
David Champion <dgc@uchicago.edu>
parents: 11146
diff changeset
   505
  ``conflicts``
a912f26777d3 merge: introduce tool.check parameter
David Champion <dgc@uchicago.edu>
parents: 11146
diff changeset
   506
    Check whether there are conflicts even though the tool reported success.
11149
d3c1eddfdbcf merge: tool.check = prompt will force an interactive merge check
David Champion <dgc@uchicago.edu>
parents: 11148
diff changeset
   507
  ``prompt``
d3c1eddfdbcf merge: tool.check = prompt will force an interactive merge check
David Champion <dgc@uchicago.edu>
parents: 11148
diff changeset
   508
    Always prompt for merge success, regardless of success reported by tool.
11148
a912f26777d3 merge: introduce tool.check parameter
David Champion <dgc@uchicago.edu>
parents: 11146
diff changeset
   509
a912f26777d3 merge: introduce tool.check parameter
David Champion <dgc@uchicago.edu>
parents: 11146
diff changeset
   510
``checkchanged``
a912f26777d3 merge: introduce tool.check parameter
David Champion <dgc@uchicago.edu>
parents: 11146
diff changeset
   511
  True is equivalent to ``check = changed``.
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   512
  Default: False
11148
a912f26777d3 merge: introduce tool.check parameter
David Champion <dgc@uchicago.edu>
parents: 11146
diff changeset
   513
``checkconflicts``
a912f26777d3 merge: introduce tool.check parameter
David Champion <dgc@uchicago.edu>
parents: 11146
diff changeset
   514
  True is equivalent to ``check = conflicts``.
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   515
  Default: False
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   516
``fixeol``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   517
  Attempt to fix up EOL changes caused by the merge tool.
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   518
  Default: False
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   519
``gui``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   520
  This tool requires a graphical interface to run. Default: False
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   521
``regkey``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   522
  Windows registry key which describes install location of this
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   523
  tool. Mercurial will search for this key first under
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   524
  ``HKEY_CURRENT_USER`` and then under ``HKEY_LOCAL_MACHINE``.
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   525
  Default: None
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   526
``regname``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   527
  Name of value to read from specified registry key. Defaults to the
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   528
  unnamed (default) value.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   529
``regappend``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   530
  String to append to the value read from the registry, typically
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   531
  the executable name of the tool.
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   532
  Default: None
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   533
6010
83d193a513c8 add merge sections to hgrc.5
Steve Borho <steve@borho.org>
parents: 5997
diff changeset
   534
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   535
``hooks``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   536
"""""""""
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   537
Commands or Python functions that get automatically executed by
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   538
various actions such as starting or finishing a commit. Multiple
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   539
hooks can be run for the same action by appending a suffix to the
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   540
action. Overriding a site-wide hook can be done by changing its
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   541
value or setting it to an empty string.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   542
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   543
Example ``.hg/hgrc``::
1485
625f3f13d7be mention running multiple hooks in the doc
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1316
diff changeset
   544
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   545
  [hooks]
9830
ab1625ccf3a9 hgrc.5: oft-requested "hg update" hook example
Martin Geisler <mg@lazybytes.net>
parents: 9792
diff changeset
   546
  # update working directory after adding changesets
ab1625ccf3a9 hgrc.5: oft-requested "hg update" hook example
Martin Geisler <mg@lazybytes.net>
parents: 9792
diff changeset
   547
  changegroup.update = hg update
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   548
  # do not use the site-wide hook
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   549
  incoming =
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   550
  incoming.email = /my/email/hook
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   551
  incoming.autobuild = /my/build/hook
1485
625f3f13d7be mention running multiple hooks in the doc
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1316
diff changeset
   552
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   553
Most hooks are run with environment variables set that give useful
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   554
additional information. For each hook below, the environment
9746
2dee9a359262 hgrc.5: mark more inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9745
diff changeset
   555
variables it is passed are listed with names of the form ``$HG_foo``.
1727
019e6a47a53e fix names of parent changeset ids in hooks.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1726
diff changeset
   556
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   557
``changegroup``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   558
  Run after a changegroup has been added via push, pull or unbundle.
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   559
  ID of the first new changeset is in ``$HG_NODE``. URL from which
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   560
  changes came is in ``$HG_URL``.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   561
``commit``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   562
  Run after a changeset has been created in the local repository. ID
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   563
  of the newly created changeset is in ``$HG_NODE``. Parent changeset
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   564
  IDs are in ``$HG_PARENT1`` and ``$HG_PARENT2``.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   565
``incoming``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   566
  Run after a changeset has been pulled, pushed, or unbundled into
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   567
  the local repository. The ID of the newly arrived changeset is in
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   568
  ``$HG_NODE``. URL that was source of changes came is in ``$HG_URL``.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   569
``outgoing``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   570
  Run after sending changes from local repository to another. ID of
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   571
  first changeset sent is in ``$HG_NODE``. Source of operation is in
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   572
  ``$HG_SOURCE``; see "preoutgoing" hook for description.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   573
``post-<command>``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   574
  Run after successful invocations of the associated command. The
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   575
  contents of the command line are passed as ``$HG_ARGS`` and the result
11330
713ae78bb583 provide pre- and post- hooks with parsed command line arguments.
Chad Dombrova <chadrik@gmail.com>
parents: 11286
diff changeset
   576
  code in ``$HG_RESULT``. Parsed command line arguments are passed as 
713ae78bb583 provide pre- and post- hooks with parsed command line arguments.
Chad Dombrova <chadrik@gmail.com>
parents: 11286
diff changeset
   577
  ``$HG_PATS`` and ``$HG_OPTS``. These contain string representations of
713ae78bb583 provide pre- and post- hooks with parsed command line arguments.
Chad Dombrova <chadrik@gmail.com>
parents: 11286
diff changeset
   578
  the python data internally passed to <command>. ``$HG_OPTS`` is a 
713ae78bb583 provide pre- and post- hooks with parsed command line arguments.
Chad Dombrova <chadrik@gmail.com>
parents: 11286
diff changeset
   579
  dictionary of options (with unspecified options set to their defaults).
713ae78bb583 provide pre- and post- hooks with parsed command line arguments.
Chad Dombrova <chadrik@gmail.com>
parents: 11286
diff changeset
   580
  ``$HG_PATS`` is a list of arguments. Hook failure is ignored.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   581
``pre-<command>``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   582
  Run before executing the associated command. The contents of the
11330
713ae78bb583 provide pre- and post- hooks with parsed command line arguments.
Chad Dombrova <chadrik@gmail.com>
parents: 11286
diff changeset
   583
  command line are passed as ``$HG_ARGS``. Parsed command line arguments
713ae78bb583 provide pre- and post- hooks with parsed command line arguments.
Chad Dombrova <chadrik@gmail.com>
parents: 11286
diff changeset
   584
  are passed as ``$HG_PATS`` and ``$HG_OPTS``. These contain string
713ae78bb583 provide pre- and post- hooks with parsed command line arguments.
Chad Dombrova <chadrik@gmail.com>
parents: 11286
diff changeset
   585
  representations of the data internally passed to <command>. ``$HG_OPTS``
713ae78bb583 provide pre- and post- hooks with parsed command line arguments.
Chad Dombrova <chadrik@gmail.com>
parents: 11286
diff changeset
   586
  is a  dictionary of options (with unspecified options set to their
713ae78bb583 provide pre- and post- hooks with parsed command line arguments.
Chad Dombrova <chadrik@gmail.com>
parents: 11286
diff changeset
   587
  defaults). ``$HG_PATS`` is a list of arguments. If the hook returns 
713ae78bb583 provide pre- and post- hooks with parsed command line arguments.
Chad Dombrova <chadrik@gmail.com>
parents: 11286
diff changeset
   588
  failure, the command doesn't execute and Mercurial returns the failure
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   589
  code.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   590
``prechangegroup``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   591
  Run before a changegroup is added via push, pull or unbundle. Exit
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   592
  status 0 allows the changegroup to proceed. Non-zero status will
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   593
  cause the push, pull or unbundle to fail. URL from which changes
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   594
  will come is in ``$HG_URL``.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   595
``precommit``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   596
  Run before starting a local commit. Exit status 0 allows the
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   597
  commit to proceed. Non-zero status will cause the commit to fail.
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   598
  Parent changeset IDs are in ``$HG_PARENT1`` and ``$HG_PARENT2``.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   599
``preoutgoing``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   600
  Run before collecting changes to send from the local repository to
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   601
  another. Non-zero status will cause failure. This lets you prevent
8773
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   602
  pull over HTTP or SSH. Also prevents against local pull, push
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   603
  (outbound) or bundle commands, but not effective, since you can
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   604
  just copy files instead then. Source of operation is in
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   605
  ``$HG_SOURCE``. If "serve", operation is happening on behalf of remote
8773
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   606
  SSH or HTTP repository. If "push", "pull" or "bundle", operation
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   607
  is happening on behalf of repository on same system.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   608
``pretag``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   609
  Run before creating a tag. Exit status 0 allows the tag to be
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   610
  created. Non-zero status will cause the tag to fail. ID of
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   611
  changeset to tag is in ``$HG_NODE``. Name of tag is in ``$HG_TAG``. Tag is
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   612
  local if ``$HG_LOCAL=1``, in repository if ``$HG_LOCAL=0``.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   613
``pretxnchangegroup``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   614
  Run after a changegroup has been added via push, pull or unbundle,
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   615
  but before the transaction has been committed. Changegroup is
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   616
  visible to hook program. This lets you validate incoming changes
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   617
  before accepting them. Passed the ID of the first new changeset in
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   618
  ``$HG_NODE``. Exit status 0 allows the transaction to commit. Non-zero
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   619
  status will cause the transaction to be rolled back and the push,
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   620
  pull or unbundle will fail. URL that was source of changes is in
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   621
  ``$HG_URL``.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   622
``pretxncommit``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   623
  Run after a changeset has been created but the transaction not yet
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   624
  committed. Changeset is visible to hook program. This lets you
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   625
  validate commit message and changes. Exit status 0 allows the
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   626
  commit to proceed. Non-zero status will cause the transaction to
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   627
  be rolled back. ID of changeset is in ``$HG_NODE``. Parent changeset
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   628
  IDs are in ``$HG_PARENT1`` and ``$HG_PARENT2``.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   629
``preupdate``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   630
  Run before updating the working directory. Exit status 0 allows
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   631
  the update to proceed. Non-zero status will prevent the update.
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   632
  Changeset ID of first new parent is in ``$HG_PARENT1``. If merge, ID
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   633
  of second new parent is in ``$HG_PARENT2``.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   634
``tag``
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   635
  Run after a tag is created. ID of tagged changeset is in ``$HG_NODE``.
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   636
  Name of tag is in ``$HG_TAG``. Tag is local if ``$HG_LOCAL=1``, in
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   637
  repository if ``$HG_LOCAL=0``.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   638
``update``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   639
  Run after updating the working directory. Changeset ID of first
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   640
  new parent is in ``$HG_PARENT1``. If merge, ID of second new parent is
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   641
  in ``$HG_PARENT2``. If the update succeeded, ``$HG_ERROR=0``. If the
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   642
  update failed (e.g. because conflicts not resolved), ``$HG_ERROR=1``.
1726
56fb048b102c prefix hook env var names with HG_.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1721
diff changeset
   643
9700
26fc6024dd06 doc: use reST note directive
Martin Geisler <mg@lazybytes.net>
parents: 9699
diff changeset
   644
.. note:: It is generally better to use standard hooks rather than the
26fc6024dd06 doc: use reST note directive
Martin Geisler <mg@lazybytes.net>
parents: 9699
diff changeset
   645
   generic pre- and post- command hooks as they are guaranteed to be
26fc6024dd06 doc: use reST note directive
Martin Geisler <mg@lazybytes.net>
parents: 9699
diff changeset
   646
   called in the appropriate contexts for influencing transactions.
26fc6024dd06 doc: use reST note directive
Martin Geisler <mg@lazybytes.net>
parents: 9699
diff changeset
   647
   Also, hooks like "commit" will be called in all contexts that
26fc6024dd06 doc: use reST note directive
Martin Geisler <mg@lazybytes.net>
parents: 9699
diff changeset
   648
   generate a commit (e.g. tag) and not just the commit command.
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   649
9700
26fc6024dd06 doc: use reST note directive
Martin Geisler <mg@lazybytes.net>
parents: 9699
diff changeset
   650
.. note:: Environment variables with empty values may not be passed to
26fc6024dd06 doc: use reST note directive
Martin Geisler <mg@lazybytes.net>
parents: 9699
diff changeset
   651
   hooks on platforms such as Windows. As an example, ``$HG_PARENT2``
26fc6024dd06 doc: use reST note directive
Martin Geisler <mg@lazybytes.net>
parents: 9699
diff changeset
   652
   will have an empty value under Unix-like platforms for non-merge
26fc6024dd06 doc: use reST note directive
Martin Geisler <mg@lazybytes.net>
parents: 9699
diff changeset
   653
   changesets, while it will not be available at all under Windows.
4641
54b735135fd3 Document empty environment variables not being passed to hooks under Windows.
Patrick Mezard <pmezard@gmail.com>
parents: 4052
diff changeset
   654
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   655
The syntax for Python hooks is as follows::
2155
ff255b41b4aa support hooks written in python.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2003
diff changeset
   656
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   657
  hookname = python:modulename.submodule.callable
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   658
  hookname = python:/path/to/python/module.py:callable
2155
ff255b41b4aa support hooks written in python.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2003
diff changeset
   659
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   660
Python hooks are run within the Mercurial process. Each hook is
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   661
called with at least three keyword arguments: a ui object (keyword
9835
6a07e74370d7 hgrc.5: mark some words as inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9830
diff changeset
   662
``ui``), a repository object (keyword ``repo``), and a ``hooktype``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   663
keyword that tells what kind of hook is used. Arguments listed as
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   664
environment variables above are passed as keyword arguments, with no
9624
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   665
``HG_`` prefix, and names in lower case.
2155
ff255b41b4aa support hooks written in python.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2003
diff changeset
   666
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   667
If a Python hook returns a "true" value or raises an exception, this
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   668
is treated as a failure.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   669
2155
ff255b41b4aa support hooks written in python.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2003
diff changeset
   670
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   671
``http_proxy``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   672
""""""""""""""
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   673
Used to access web-based Mercurial repositories through a HTTP
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   674
proxy.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   675
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   676
``host``
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   677
    Host name and (optional) port of the proxy server, for example
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   678
    "myproxy:8000".
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   679
``no``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   680
    Optional. Comma-separated list of host names that should bypass
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   681
    the proxy.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   682
``passwd``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   683
    Optional. Password to authenticate with at the proxy server.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   684
``user``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   685
    Optional. User name to authenticate with at the proxy server.
10416
4cfd0d56be6d doc: add missing documentation for http_proxy.always
Henrik Stuart <hg@hstuart.dk>
parents: 10409
diff changeset
   686
``always``
4cfd0d56be6d doc: add missing documentation for http_proxy.always
Henrik Stuart <hg@hstuart.dk>
parents: 10409
diff changeset
   687
    Optional. Always use the proxy, even for localhost and any entries
4cfd0d56be6d doc: add missing documentation for http_proxy.always
Henrik Stuart <hg@hstuart.dk>
parents: 10409
diff changeset
   688
    in ``http_proxy.no``. True or False. Default: False.
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   689
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   690
``smtp``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   691
""""""""
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   692
Configuration for extensions that need to send email messages.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   693
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   694
``host``
2853
619f1c65384c Adjusted documentation for hgrc's "[smtp] host" for change in 9f745d3675d4.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 2691
diff changeset
   695
    Host name of mail server, e.g. "mail.example.com".
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   696
``port``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   697
    Optional. Port to connect to on mail server. Default: 25.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   698
``tls``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   699
    Optional. Whether to connect to mail server using TLS. True or
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   700
    False. Default: False.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   701
``username``
12384
ffcceca7406d doc: clarify smtp.password usage
Anthony Foiani <anthony.foiani@gmail.com>
parents: 12049
diff changeset
   702
    Optional. User name for authenticating with the SMTP server.
2200
9f43b6e24232 move mail sending code into core, so extensions can share it.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2197
diff changeset
   703
    Default: none.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   704
``password``
12384
ffcceca7406d doc: clarify smtp.password usage
Anthony Foiani <anthony.foiani@gmail.com>
parents: 12049
diff changeset
   705
    Optional. Password for authenticating with the SMTP server. If not
ffcceca7406d doc: clarify smtp.password usage
Anthony Foiani <anthony.foiani@gmail.com>
parents: 12049
diff changeset
   706
    specified, interactive sessions will prompt the user for a
ffcceca7406d doc: clarify smtp.password usage
Anthony Foiani <anthony.foiani@gmail.com>
parents: 12049
diff changeset
   707
    password; non-interactive sessions will fail. Default: none.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   708
``local_hostname``
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   709
    Optional. It's the hostname that the sender can use to identify
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   710
    itself to the MTA.
2200
9f43b6e24232 move mail sending code into core, so extensions can share it.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2197
diff changeset
   711
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   712
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   713
``patch``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   714
"""""""""
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   715
Settings used when applying patches, for instance through the 'import'
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   716
command or with Mercurial Queues extension.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   717
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   718
``eol``
8810
ac92775b3b80 Add patch.eol to ignore EOLs when patching (issue1019)
Patrick Mezard <pmezard@gmail.com>
parents: 8782
diff changeset
   719
    When set to 'strict' patch content and patched files end of lines
10127
d8214e944b84 patch: fix eolmode=auto with new files
Patrick Mezard <pmezard@gmail.com>
parents: 10102
diff changeset
   720
    are preserved. When set to ``lf`` or ``crlf``, both files end of
d8214e944b84 patch: fix eolmode=auto with new files
Patrick Mezard <pmezard@gmail.com>
parents: 10102
diff changeset
   721
    lines are ignored when patching and the result line endings are
10102
1720d70cd6d4 patch: implement patch.eol=auto mode
Martin Geisler <mg@lazybytes.net>
parents: 9835
diff changeset
   722
    normalized to either LF (Unix) or CRLF (Windows). When set to
1720d70cd6d4 patch: implement patch.eol=auto mode
Martin Geisler <mg@lazybytes.net>
parents: 9835
diff changeset
   723
    ``auto``, end of lines are again ignored while patching but line
1720d70cd6d4 patch: implement patch.eol=auto mode
Martin Geisler <mg@lazybytes.net>
parents: 9835
diff changeset
   724
    endings in patched files are normalized to their original setting
10127
d8214e944b84 patch: fix eolmode=auto with new files
Patrick Mezard <pmezard@gmail.com>
parents: 10102
diff changeset
   725
    on a per-file basis. If target file does not exist or has no end
d8214e944b84 patch: fix eolmode=auto with new files
Patrick Mezard <pmezard@gmail.com>
parents: 10102
diff changeset
   726
    of line, patch line endings are preserved.
8810
ac92775b3b80 Add patch.eol to ignore EOLs when patching (issue1019)
Patrick Mezard <pmezard@gmail.com>
parents: 8782
diff changeset
   727
    Default: strict.
ac92775b3b80 Add patch.eol to ignore EOLs when patching (issue1019)
Patrick Mezard <pmezard@gmail.com>
parents: 8782
diff changeset
   728
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   729
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   730
``paths``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   731
"""""""""
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   732
Assigns symbolic names to repositories. The left side is the
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   733
symbolic name, and the right gives the directory or URL that is the
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   734
location of the repository. Default paths can be declared by setting
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   735
the following entries.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   736
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   737
``default``
2277
066d0055e430 Add more specific documentation about defaults for the [paths] section
Daniel <byteshack@gmail.com>
parents: 2266
diff changeset
   738
    Directory or URL to use when pulling if no source is specified.
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   739
    Default is set to repository from which the current repository was
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   740
    cloned.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   741
``default-push``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   742
    Optional. Directory or URL to use when pushing if no destination
2277
066d0055e430 Add more specific documentation about defaults for the [paths] section
Daniel <byteshack@gmail.com>
parents: 2266
diff changeset
   743
    is specified.
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   744
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   745
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   746
``profiling``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   747
"""""""""""""
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   748
Specifies profiling format and file output. In this section
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   749
description, 'profiling data' stands for the raw data collected
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   750
during profiling, while 'profiling report' stands for a statistical
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   751
text report generated from the profiling data. The profiling is done
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   752
using lsprof.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   753
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   754
``format``
8023
fd9debb3ea1b profiling: Adding a profiling.format config variable
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 8022
diff changeset
   755
    Profiling format.
fd9debb3ea1b profiling: Adding a profiling.format config variable
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 8022
diff changeset
   756
    Default: text.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   757
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   758
    ``text``
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   759
      Generate a profiling report. When saving to a file, it should be
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   760
      noted that only the report is saved, and the profiling data is
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   761
      not kept.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   762
    ``kcachegrind``
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   763
      Format profiling data for kcachegrind use: when saving to a
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   764
      file, the generated file can directly be loaded into
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   765
      kcachegrind.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   766
``output``
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   767
    File path where profiling data or report should be saved. If the
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   768
    file exists, it is replaced. Default: None, data is printed on
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   769
    stderr
8022
4f3fdfaa3874 profiling: Adding profiling.output config variable
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 7916
diff changeset
   770
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   771
``server``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   772
""""""""""
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   773
Controls generic server settings.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   774
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   775
``uncompressed``
8773
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   776
    Whether to allow clients to clone a repository using the
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   777
    uncompressed streaming protocol. This transfers about 40% more
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   778
    data than a regular clone, but uses less memory and CPU on both
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   779
    server and client. Over a LAN (100 Mbps or better) or a very fast
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   780
    WAN, an uncompressed streaming clone is a lot faster (~10x) than a
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   781
    regular clone. Over most WAN connections (anything slower than
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   782
    about 6 Mbps), uncompressed streaming is slower, because of the
10419
992dc3d39357 hgrc: update docs for the server section
Matt Mackall <mpm@selenic.com>
parents: 10416
diff changeset
   783
    extra data transfer overhead. This mode will also temporarily hold
992dc3d39357 hgrc: update docs for the server section
Matt Mackall <mpm@selenic.com>
parents: 10416
diff changeset
   784
    the write lock while determining what data to transfer.
992dc3d39357 hgrc: update docs for the server section
Matt Mackall <mpm@selenic.com>
parents: 10416
diff changeset
   785
    Default is True.
2621
5a5852a417b1 clone: disable stream support on server side by default.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2583
diff changeset
   786
10419
992dc3d39357 hgrc: update docs for the server section
Matt Mackall <mpm@selenic.com>
parents: 10416
diff changeset
   787
``validate``
992dc3d39357 hgrc: update docs for the server section
Matt Mackall <mpm@selenic.com>
parents: 10416
diff changeset
   788
    Whether to validate the completeness of pushed changesets by
992dc3d39357 hgrc: update docs for the server section
Matt Mackall <mpm@selenic.com>
parents: 10416
diff changeset
   789
    checking that all new file revisions specified in manifests are
992dc3d39357 hgrc: update docs for the server section
Matt Mackall <mpm@selenic.com>
parents: 10416
diff changeset
   790
    present. Default is False.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   791
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   792
``trusted``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   793
"""""""""""
11286
ccfd1cbc7289 hgrc: improve docs for the trusted section
Matt Mackall <mpm@selenic.com>
parents: 11269
diff changeset
   794
ccfd1cbc7289 hgrc: improve docs for the trusted section
Matt Mackall <mpm@selenic.com>
parents: 11269
diff changeset
   795
Mercurial will not use the settings in the
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   796
``.hg/hgrc`` file from a repository if it doesn't belong to a trusted
11286
ccfd1cbc7289 hgrc: improve docs for the trusted section
Matt Mackall <mpm@selenic.com>
parents: 11269
diff changeset
   797
user or to a trusted group, as various hgrc features allow arbitrary
ccfd1cbc7289 hgrc: improve docs for the trusted section
Matt Mackall <mpm@selenic.com>
parents: 11269
diff changeset
   798
commands to be run. This issue is often encountered when configuring
ccfd1cbc7289 hgrc: improve docs for the trusted section
Matt Mackall <mpm@selenic.com>
parents: 11269
diff changeset
   799
hooks or extensions for shared repositories or servers. However,
ccfd1cbc7289 hgrc: improve docs for the trusted section
Matt Mackall <mpm@selenic.com>
parents: 11269
diff changeset
   800
the web interface will use some safe settings from the ``[web]``
ccfd1cbc7289 hgrc: improve docs for the trusted section
Matt Mackall <mpm@selenic.com>
parents: 11269
diff changeset
   801
section.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   802
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   803
This section specifies what users and groups are trusted. The
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   804
current user is always trusted. To trust everybody, list a user or a
11286
ccfd1cbc7289 hgrc: improve docs for the trusted section
Matt Mackall <mpm@selenic.com>
parents: 11269
diff changeset
   805
group with name ``*``. These settings must be placed in an
ccfd1cbc7289 hgrc: improve docs for the trusted section
Matt Mackall <mpm@selenic.com>
parents: 11269
diff changeset
   806
*already-trusted file* to take effect, such as ``$HOME/.hgrc`` of the
ccfd1cbc7289 hgrc: improve docs for the trusted section
Matt Mackall <mpm@selenic.com>
parents: 11269
diff changeset
   807
user or service running Mercurial.
3552
9b52239dc740 save settings from untrusted config files in a separate configparser
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3551
diff changeset
   808
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   809
``users``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   810
  Comma-separated list of trusted users.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   811
``groups``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   812
  Comma-separated list of trusted groups.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   813
3551
3b07e223534b Only read .hg/hgrc files from trusted users/groups
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3489
diff changeset
   814
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   815
``ui``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   816
""""""
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   817
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   818
User interface controls.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   819
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   820
``archivemeta``
8773
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   821
    Whether to include the .hg_archival.txt file containing meta data
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   822
    (hashes for the repository base and for tip) in archives created
10975
db4d7077f48d doc: add links from hgrc.5 to hg.1
Martin Geisler <mg@aragost.com>
parents: 10485
diff changeset
   823
    by the :hg:`archive` command or downloaded via hgweb.
9699
7f4a792e50eb hgrc.5: capitalize True and False consistently
Martin Geisler <mg@lazybytes.net>
parents: 9697
diff changeset
   824
    Default is True.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   825
``askusername``
6862
7192876ac329 ui: add an option to prompt for the username when it isn't provided
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 6614
diff changeset
   826
    Whether to prompt for a username when committing. If True, and
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   827
    neither ``$HGUSER`` nor ``$EMAIL`` has been specified, then the user will
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   828
    be prompted to enter a username. If no username is entered, the
9745
5b8e0da2d59b hgrc.5: do not turn random URLs into links
Martin Geisler <mg@lazybytes.net>
parents: 9744
diff changeset
   829
    default ``USER@HOST`` is used instead.
6862
7192876ac329 ui: add an option to prompt for the username when it isn't provided
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 6614
diff changeset
   830
    Default is False.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   831
``debug``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   832
    Print debugging information. True or False. Default is False.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   833
``editor``
9746
2dee9a359262 hgrc.5: mark more inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9745
diff changeset
   834
    The editor to use during a commit. Default is ``$EDITOR`` or ``vi``.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   835
``fallbackencoding``
3835
d1ce5461beed Allow the user to specify the fallback encoding for the changelog
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3721
diff changeset
   836
    Encoding to try if it's not possible to decode the changelog using
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   837
    UTF-8. Default is ISO-8859-1.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   838
``ignore``
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   839
    A file to read per-user ignore patterns from. This file should be
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   840
    in the same format as a repository-wide .hgignore file. This
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   841
    option supports hook syntax, so if you want to specify multiple
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   842
    ignore files, you can do so by setting something like
9624
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   843
    ``ignore.other = ~/.hgignore2``. For details of the ignore file
9162
2399362b3bb0 doc: link man pages to one another
Martin Geisler <mg@lazybytes.net>
parents: 9161
diff changeset
   844
    format, see the |hgignore(5)|_ man page.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   845
``interactive``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   846
    Allow to prompt the user. True or False. Default is True.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   847
``logtemplate``
1907
7718885070b1 let commands that show changesets use templates.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1788
diff changeset
   848
    Template string for commands that print changesets.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   849
``merge``
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   850
    The conflict resolution program to use during a manual merge.
6010
83d193a513c8 add merge sections to hgrc.5
Steve Borho <steve@borho.org>
parents: 5997
diff changeset
   851
    There are some internal tools available:
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   852
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   853
    ``internal:local``
6010
83d193a513c8 add merge sections to hgrc.5
Steve Borho <steve@borho.org>
parents: 5997
diff changeset
   854
        keep the local version
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   855
    ``internal:other``
6010
83d193a513c8 add merge sections to hgrc.5
Steve Borho <steve@borho.org>
parents: 5997
diff changeset
   856
        use the other version
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   857
    ``internal:merge``
6010
83d193a513c8 add merge sections to hgrc.5
Steve Borho <steve@borho.org>
parents: 5997
diff changeset
   858
        use the internal non-interactive merge tool
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   859
    ``internal:fail``
6010
83d193a513c8 add merge sections to hgrc.5
Steve Borho <steve@borho.org>
parents: 5997
diff changeset
   860
        fail to merge
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   861
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   862
For more information on configuring merge tools see the
9702
a9d15bf7efe2 doc: add some internal links to man pages
Martin Geisler <mg@lazybytes.net>
parents: 9701
diff changeset
   863
merge-tools_ section.
6445
a1db3d8b9b8a hgrc.5: fix subsection formatting
Christian Ebert <blacktrash@gmx.net>
parents: 6325
diff changeset
   864
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   865
``patch``
9746
2dee9a359262 hgrc.5: mark more inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9745
diff changeset
   866
    command to use to apply patches. Look for ``gpatch`` or ``patch`` in
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   867
    PATH if unset.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   868
``quiet``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   869
    Reduce the amount of output printed. True or False. Default is False.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   870
``remotecmd``
9746
2dee9a359262 hgrc.5: mark more inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9745
diff changeset
   871
    remote command to use for clone/push/pull operations. Default is ``hg``.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   872
``report_untrusted``
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   873
    Warn if a ``.hg/hgrc`` file is ignored due to not being owned by a
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   874
    trusted user or group. True or False. Default is True.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   875
``slash``
9624
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   876
    Display paths using a slash (``/``) as the path separator. This
8782
d19ab9a56bf4 doc: wrap man pages after fixing quoting
Martin Geisler <mg@lazybytes.net>
parents: 8781
diff changeset
   877
    only makes a difference on systems where the default path
d19ab9a56bf4 doc: wrap man pages after fixing quoting
Martin Geisler <mg@lazybytes.net>
parents: 8781
diff changeset
   878
    separator is not the slash character (e.g. Windows uses the
9624
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   879
    backslash character (``\``)).
4527
b422b558015b Add ui.slash hgrc setting
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4435
diff changeset
   880
    Default is False.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   881
``ssh``
9746
2dee9a359262 hgrc.5: mark more inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9745
diff changeset
   882
    command to use for SSH connections. Default is ``ssh``.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   883
``strict``
2988
63c3a1921a67 Add ui.strict config item.
Bryan O'Sullivan <bos@serpentine.com>
parents: 2853
diff changeset
   884
    Require exact command names, instead of allowing unambiguous
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   885
    abbreviations. True or False. Default is False.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   886
``style``
4715
ad45209a7c7a Fixed sorting inside nearly sorted sections in hgrc.5
Thomas Arendsen Hein <thomas@intevation.de>
parents: 4709
diff changeset
   887
    Name of style to use for command output.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   888
``timeout``
1787
e431344e604c add a timeout when a lock is held (default 1024 sec)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1736
diff changeset
   889
    The timeout used when a lock is held (in seconds), a negative value
1788
750b9cd83965 change the default timeout to 600 seconds
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1787
diff changeset
   890
    means no timeout. Default is 600.
9697
59e5ae188440 hgrc.5: document ui.traceback setting
Martin Geisler <mg@lazybytes.net>
parents: 9659
diff changeset
   891
``traceback``
59e5ae188440 hgrc.5: document ui.traceback setting
Martin Geisler <mg@lazybytes.net>
parents: 9659
diff changeset
   892
    Mercurial always prints a traceback when an unknown exception
59e5ae188440 hgrc.5: document ui.traceback setting
Martin Geisler <mg@lazybytes.net>
parents: 9659
diff changeset
   893
    occurs. Setting this to True will make Mercurial print a traceback
59e5ae188440 hgrc.5: document ui.traceback setting
Martin Geisler <mg@lazybytes.net>
parents: 9659
diff changeset
   894
    on all exceptions, even those recognized by Mercurial (such as
59e5ae188440 hgrc.5: document ui.traceback setting
Martin Geisler <mg@lazybytes.net>
parents: 9659
diff changeset
   895
    IOError or MemoryError). Default is False.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   896
``username``
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   897
    The committer of a changeset created when running "commit".
9745
5b8e0da2d59b hgrc.5: do not turn random URLs into links
Martin Geisler <mg@lazybytes.net>
parents: 9744
diff changeset
   898
    Typically a person's name and email address, e.g. ``Fred Widget
5b8e0da2d59b hgrc.5: do not turn random URLs into links
Martin Geisler <mg@lazybytes.net>
parents: 9744
diff changeset
   899
    <fred@example.com>``. Default is ``$EMAIL`` or ``username@hostname``. If
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   900
    the username in hgrc is empty, it has to be specified manually or
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   901
    in a different hgrc file (e.g. ``$HOME/.hgrc``, if the admin set
11226
b9e89fc5c7f1 doc: document expansion of %include and ui.username
Martin Geisler <mg@aragost.com>
parents: 11222
diff changeset
   902
    ``username =``  in the system hgrc). Environment variables in the
b9e89fc5c7f1 doc: document expansion of %include and ui.username
Martin Geisler <mg@aragost.com>
parents: 11222
diff changeset
   903
    username are expanded.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   904
``verbose``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   905
    Increase the amount of output printed. True or False. Default is False.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   906
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   907
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   908
``web``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   909
"""""""
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   910
Web interface configuration.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   911
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   912
``accesslog``
938
54b2a42e501e hgweb: add [web] section to hgrc
mpm@selenic.com
parents: 705
diff changeset
   913
    Where to output the access log. Default is stdout.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   914
``address``
1171
a425bb927ede Sort items in each hgrc section. Add web/description.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1079
diff changeset
   915
    Interface address to bind to. Default is all.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   916
``allow_archive``
2358
8819fc1dcf4b hgweb: add allow_archive support to [web] section of hgrc
TK Soh <teekaysoh@yahoo.com>
parents: 2318
diff changeset
   917
    List of archive format (bz2, gz, zip) allowed for downloading.
8819fc1dcf4b hgweb: add allow_archive support to [web] section of hgrc
TK Soh <teekaysoh@yahoo.com>
parents: 2318
diff changeset
   918
    Default is empty.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   919
``allowbz2``
8773
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   920
    (DEPRECATED) Whether to allow .tar.bz2 downloading of repository
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   921
    revisions.
9699
7f4a792e50eb hgrc.5: capitalize True and False consistently
Martin Geisler <mg@lazybytes.net>
parents: 9697
diff changeset
   922
    Default is False.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   923
``allowgz``
8773
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   924
    (DEPRECATED) Whether to allow .tar.gz downloading of repository
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   925
    revisions.
9699
7f4a792e50eb hgrc.5: capitalize True and False consistently
Martin Geisler <mg@lazybytes.net>
parents: 9697
diff changeset
   926
    Default is False.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   927
``allowpull``
9699
7f4a792e50eb hgrc.5: capitalize True and False consistently
Martin Geisler <mg@lazybytes.net>
parents: 9697
diff changeset
   928
    Whether to allow pulling from the repository. Default is True.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   929
``allow_push``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   930
    Whether to allow pushing to the repository. If empty or not set,
9624
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   931
    push is not allowed. If the special value ``*``, any remote user can
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   932
    push, including unauthenticated users. Otherwise, the remote user
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   933
    must have been authenticated, and the authenticated user name must
10982
0a548640e012 ui: support quotes in configlist (issue2147)
Henrik Stuart <hg@hstuart.dk>
parents: 10981
diff changeset
   934
    be present in this list. The contents of the allow_push list are
0a548640e012 ui: support quotes in configlist (issue2147)
Henrik Stuart <hg@hstuart.dk>
parents: 10981
diff changeset
   935
    examined after the deny_push list.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   936
``allow_read``
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   937
    If the user has not already been denied repository access due to
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   938
    the contents of deny_read, this list determines whether to grant
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   939
    repository access to the user. If this list is not empty, and the
10982
0a548640e012 ui: support quotes in configlist (issue2147)
Henrik Stuart <hg@hstuart.dk>
parents: 10981
diff changeset
   940
    user is unauthenticated or not present in the list, then access is
0a548640e012 ui: support quotes in configlist (issue2147)
Henrik Stuart <hg@hstuart.dk>
parents: 10981
diff changeset
   941
    denied for the user. If the list is empty or not set, then access
0a548640e012 ui: support quotes in configlist (issue2147)
Henrik Stuart <hg@hstuart.dk>
parents: 10981
diff changeset
   942
    is permitted to all users by default. Setting allow_read to the
0a548640e012 ui: support quotes in configlist (issue2147)
Henrik Stuart <hg@hstuart.dk>
parents: 10981
diff changeset
   943
    special value ``*`` is equivalent to it not being set (i.e. access
0a548640e012 ui: support quotes in configlist (issue2147)
Henrik Stuart <hg@hstuart.dk>
parents: 10981
diff changeset
   944
    is permitted to all users). The contents of the allow_read list are
0a548640e012 ui: support quotes in configlist (issue2147)
Henrik Stuart <hg@hstuart.dk>
parents: 10981
diff changeset
   945
    examined after the deny_read list.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   946
``allowzip``
8773
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   947
    (DEPRECATED) Whether to allow .zip downloading of repository
9699
7f4a792e50eb hgrc.5: capitalize True and False consistently
Martin Geisler <mg@lazybytes.net>
parents: 9697
diff changeset
   948
    revisions. Default is False. This feature creates temporary files.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   949
``baseurl``
2197
5de8b44f0446 define standard name for base url to use when printing hgweb urls.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2155
diff changeset
   950
    Base URL to use when publishing URLs in other locations, so
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   951
    third-party tools like email notification hooks can construct
9745
5b8e0da2d59b hgrc.5: do not turn random URLs into links
Martin Geisler <mg@lazybytes.net>
parents: 9744
diff changeset
   952
    URLs. Example: ``http://hgserver/repos/``.
10409
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   953
``cacerts``
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   954
    Path to file containing a list of PEM encoded certificate authorities
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   955
    that may be used to verify an SSL server's identity. The form must be
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   956
    as follows::
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   957
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   958
        -----BEGIN CERTIFICATE-----
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   959
        ... (certificate in base64 PEM encoding) ...
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   960
        -----END CERTIFICATE-----
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   961
        -----BEGIN CERTIFICATE-----
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   962
        ... (certificate in base64 PEM encoding) ...
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   963
        -----END CERTIFICATE-----
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   964
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   965
    This feature is only supported when using Python 2.6. If you wish to
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   966
    use it with earlier versions of Python, install the backported
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   967
    version of the ssl library that is available from
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   968
    ``http://pypi.python.org``.
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   969
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   970
    You can use OpenSSL's CA certificate file if your platform has one.
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   971
    On most Linux systems this will be ``/etc/ssl/certs/ca-certificates.crt``.
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   972
    Otherwise you will have to generate this file manually.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   973
``contact``
2430
4ccd71b83d5e Add web.contact to the hgrc documentation.
"Daniel Santa Cruz <byteshack@gmail.com>"
parents: 2387
diff changeset
   974
    Name or email address of the person in charge of the repository.
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   975
    Defaults to ui.username or ``$EMAIL`` or "unknown" if unset or empty.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   976
``deny_push``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   977
    Whether to deny pushing to the repository. If empty or not set,
9624
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   978
    push is not denied. If the special value ``*``, all remote users are
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   979
    denied push. Otherwise, unauthenticated users are all denied, and
10982
0a548640e012 ui: support quotes in configlist (issue2147)
Henrik Stuart <hg@hstuart.dk>
parents: 10981
diff changeset
   980
    any authenticated user name present in this list is also denied. The
0a548640e012 ui: support quotes in configlist (issue2147)
Henrik Stuart <hg@hstuart.dk>
parents: 10981
diff changeset
   981
    contents of the deny_push list are examined before the allow_push list.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   982
``deny_read``
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   983
    Whether to deny reading/viewing of the repository. If this list is
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   984
    not empty, unauthenticated users are all denied, and any
10982
0a548640e012 ui: support quotes in configlist (issue2147)
Henrik Stuart <hg@hstuart.dk>
parents: 10981
diff changeset
   985
    authenticated user name present in this list is also denied access to
0a548640e012 ui: support quotes in configlist (issue2147)
Henrik Stuart <hg@hstuart.dk>
parents: 10981
diff changeset
   986
    the repository. If set to the special value ``*``, all remote users
0a548640e012 ui: support quotes in configlist (issue2147)
Henrik Stuart <hg@hstuart.dk>
parents: 10981
diff changeset
   987
    are denied access (rarely needed ;). If deny_read is empty or not set,
0a548640e012 ui: support quotes in configlist (issue2147)
Henrik Stuart <hg@hstuart.dk>
parents: 10981
diff changeset
   988
    the determination of repository access depends on the presence and
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   989
    content of the allow_read list (see description). If both
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   990
    deny_read and allow_read are empty or not set, then access is
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   991
    permitted to all users by default. If the repository is being
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   992
    served via hgwebdir, denied users will not be able to see it in
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   993
    the list of repositories. The contents of the deny_read list have
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   994
    priority over (are examined before) the contents of the allow_read
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   995
    list.
9363
8635b33eaade hgweb: add web.descend configuration variable
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 9162
diff changeset
   996
``descend``
8635b33eaade hgweb: add web.descend configuration variable
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 9162
diff changeset
   997
    hgwebdir indexes will not descend into subdirectories. Only repositories
8635b33eaade hgweb: add web.descend configuration variable
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 9162
diff changeset
   998
    directly in the current path will be shown (other repositories are still
8635b33eaade hgweb: add web.descend configuration variable
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 9162
diff changeset
   999
    available from the index corresponding to their containing path).
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
  1000
``description``
1171
a425bb927ede Sort items in each hgrc section. Add web/description.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1079
diff changeset
  1001
    Textual description of the repository's purpose or contents.
a425bb927ede Sort items in each hgrc section. Add web/description.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1079
diff changeset
  1002
    Default is "unknown".
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
  1003
``encoding``
10997
b3a1f535ce4f docs: document default for web.encoding
Matt Mackall <mpm@selenic.com>
parents: 10982
diff changeset
  1004
    Character encoding name. Default is the current locale charset.
4715
ad45209a7c7a Fixed sorting inside nearly sorted sections in hgrc.5
Thomas Arendsen Hein <thomas@intevation.de>
parents: 4709
diff changeset
  1005
    Example: "UTF-8"
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
  1006
``errorlog``
1171
a425bb927ede Sort items in each hgrc section. Add web/description.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1079
diff changeset
  1007
    Where to output the error log. Default is stderr.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
  1008
``hidden``
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
  1009
    Whether to hide the repository in the hgwebdir index.
9699
7f4a792e50eb hgrc.5: capitalize True and False consistently
Martin Geisler <mg@lazybytes.net>
parents: 9697
diff changeset
  1010
    Default is False.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
  1011
``ipv6``
9699
7f4a792e50eb hgrc.5: capitalize True and False consistently
Martin Geisler <mg@lazybytes.net>
parents: 9697
diff changeset
  1012
    Whether to use IPv6. Default is False.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
  1013
``name``
1171
a425bb927ede Sort items in each hgrc section. Add web/description.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1079
diff changeset
  1014
    Repository name to use in the web interface. Default is current
a425bb927ede Sort items in each hgrc section. Add web/description.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1079
diff changeset
  1015
    working directory.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
  1016
``maxchanges``
1171
a425bb927ede Sort items in each hgrc section. Add web/description.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1079
diff changeset
  1017
    Maximum number of changes to list on the changelog. Default is 10.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
  1018
``maxfiles``
1171
a425bb927ede Sort items in each hgrc section. Add web/description.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1079
diff changeset
  1019
    Maximum number of files to list per changeset. Default is 10.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
  1020
``port``
1171
a425bb927ede Sort items in each hgrc section. Add web/description.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1079
diff changeset
  1021
    Port to listen on. Default is 8000.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
  1022
``prefix``
5972
d83020d0466f added an entry about the prefix option inside the hgrc man page
Michele Cella <michele.cella@gmail.com>
parents: 5779
diff changeset
  1023
    Prefix path to serve from. Default is '' (server root).
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
  1024
``push_ssl``
2466
e10665147d26 push over http: server side authorization support.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2430
diff changeset
  1025
    Whether to require that inbound pushes be transported over SSL to
9699
7f4a792e50eb hgrc.5: capitalize True and False consistently
Martin Geisler <mg@lazybytes.net>
parents: 9697
diff changeset
  1026
    prevent password sniffing. Default is True.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
  1027
``staticurl``
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
  1028
    Base URL to use for static files. If unset, static files (e.g. the
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
  1029
    hgicon.png favicon) will be served by the CGI script itself. Use
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
  1030
    this setting to serve them directly with the HTTP server.
9745
5b8e0da2d59b hgrc.5: do not turn random URLs into links
Martin Geisler <mg@lazybytes.net>
parents: 9744
diff changeset
  1031
    Example: ``http://hgserver/static/``.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
  1032
``stripes``
2666
ebf033bc8eb2 hgweb: Configurable zebra stripes
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 2622
diff changeset
  1033
    How many lines a "zebra stripe" should span in multiline output.
ebf033bc8eb2 hgweb: Configurable zebra stripes
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 2622
diff changeset
  1034
    Default is 1; set to 0 to disable.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
  1035
``style``
1171
a425bb927ede Sort items in each hgrc section. Add web/description.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1079
diff changeset
  1036
    Which template map style to use.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
  1037
``templates``
1171
a425bb927ede Sort items in each hgrc section. Add web/description.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1079
diff changeset
  1038
    Where to find the HTML templates. Default is install path.
1079
a37974035f1f Document archive download options
mpm@selenic.com
parents: 986
diff changeset
  1039
938
54b2a42e501e hgweb: add [web] section to hgrc
mpm@selenic.com
parents: 705
diff changeset
  1040
9792
dd1a95ccbe07 doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents: 9784
diff changeset
  1041
Author
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
  1042
------
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
  1043
Bryan O'Sullivan <bos@serpentine.com>.
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
  1044
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
  1045
Mercurial was written by Matt Mackall <mpm@selenic.com>.
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
  1046
9792
dd1a95ccbe07 doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents: 9784
diff changeset
  1047
See Also
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
  1048
--------
9162
2399362b3bb0 doc: link man pages to one another
Martin Geisler <mg@lazybytes.net>
parents: 9161
diff changeset
  1049
|hg(1)|_, |hgignore(5)|_
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
  1050
9792
dd1a95ccbe07 doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents: 9784
diff changeset
  1051
Copying
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
  1052
-------
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
  1053
This manual page is copyright 2005 Bryan O'Sullivan.
10209
c9194a7d7d3e Update copyright year to 2010
Pascal Quantin <pascal.quantin@gmail.com>
parents: 9835
diff changeset
  1054
Mercurial is copyright 2005-2010 Matt Mackall.
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
  1055
Free use of this software is granted under the terms of the GNU General
10263
25e572394f5c Update license to GPLv2+
Matt Mackall <mpm@selenic.com>
parents: 10211
diff changeset
  1056
Public License version 2 or any later version.
9162
2399362b3bb0 doc: link man pages to one another
Martin Geisler <mg@lazybytes.net>
parents: 9161
diff changeset
  1057
2399362b3bb0 doc: link man pages to one another
Martin Geisler <mg@lazybytes.net>
parents: 9161
diff changeset
  1058
.. include:: common.txt