doc/hgrc.5.txt
author Matt Mackall <mpm@selenic.com>
Tue, 11 May 2010 17:11:40 -0500
branchstable
changeset 11160 fdcf80f26604
parent 10980 30ae8174a597
child 10981 c72358052e0b
child 11220 157f9de9ad2a
permissions -rw-r--r--
Merge with i18n
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
9784
54d292da1df7 hgrc.5: do not mention "name: value" syntax
Martin Geisler <mg@lazybytes.net>
parents: 9746
diff changeset
    93
and followed by ``name = value`` entries::
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    94
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    95
    [spam]
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    96
    eggs=ham
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    97
    green=
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    98
       eggs
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    99
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   100
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
   101
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
   102
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
   103
``#`` 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
   104
9624
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   105
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
   106
current configuration file. The inclusion is recursive, which means
68f393788895 hgrc.5: document %include directive
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   107
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
   108
the configuration file in which the ``%include`` directive is found.
9376
68f393788895 hgrc.5: document %include directive
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   109
9624
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   110
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
   111
section, if it has been set previously.
e499a4147c66 hgrc.5: document %unset directive
Martin Geisler <mg@lazybytes.net>
parents: 9376
diff changeset
   112
10980
30ae8174a597 hgrc.5: mention lists as well
Martin Geisler <mg@lazybytes.net>
parents: 10978
diff changeset
   113
The values are either free-form text strings, lists of text strings,
30ae8174a597 hgrc.5: mention lists as well
Martin Geisler <mg@lazybytes.net>
parents: 10978
diff changeset
   114
or Boolean values. Lists are split on whitespace and commas. Boolean
30ae8174a597 hgrc.5: mention lists as well
Martin Geisler <mg@lazybytes.net>
parents: 10978
diff changeset
   115
values can be set to true using any of "1", "yes", "true", or "on" and
30ae8174a597 hgrc.5: mention lists as well
Martin Geisler <mg@lazybytes.net>
parents: 10978
diff changeset
   116
to false using "0", "no", "false", or "off" (all case insensitive).
10978
6a3377851d45 hgrc.5: describe form of config values
Martin Geisler <mg@lazybytes.net>
parents: 10485
diff changeset
   117
9376
68f393788895 hgrc.5: document %include directive
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   118
9792
dd1a95ccbe07 doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents: 9784
diff changeset
   119
Sections
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   120
--------
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   121
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   122
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
   123
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
   124
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
   125
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   126
``alias``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   127
"""""""""
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   128
Defines command aliases.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   129
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
   130
commands (or aliases), optionally including arguments.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   131
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   132
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
   133
8655
21688b8a594b Move alias into core
Brendan Cully <brendan@kublai.com>
parents: 8341
diff changeset
   134
    <alias> = <command> [<argument]...
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   135
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   136
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
   137
8655
21688b8a594b Move alias into core
Brendan Cully <brendan@kublai.com>
parents: 8341
diff changeset
   138
    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
   139
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   140
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
   141
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
   142
8655
21688b8a594b Move alias into core
Brendan Cully <brendan@kublai.com>
parents: 8341
diff changeset
   143
    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
   144
9700
26fc6024dd06 doc: use reST note directive
Martin Geisler <mg@lazybytes.net>
parents: 9699
diff changeset
   145
.. 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
   146
   existing commands, which will then override the original
26fc6024dd06 doc: use reST note directive
Martin Geisler <mg@lazybytes.net>
parents: 9699
diff changeset
   147
   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
   148
8655
21688b8a594b Move alias into core
Brendan Cully <brendan@kublai.com>
parents: 8341
diff changeset
   149
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   150
``auth``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   151
""""""""
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   152
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
   153
the following format::
8333
89c80c3dc584 allow http authentication information to be specified in the configuration
Sune Foldager <cryo@cyanite.org>
parents: 8024
diff changeset
   154
89c80c3dc584 allow http authentication information to be specified in the configuration
Sune Foldager <cryo@cyanite.org>
parents: 8024
diff changeset
   155
    <name>.<argument> = <value>
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   156
9835
6a07e74370d7 hgrc.5: mark some words as inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9830
diff changeset
   157
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
   158
entries. Example::
8333
89c80c3dc584 allow http authentication information to be specified in the configuration
Sune Foldager <cryo@cyanite.org>
parents: 8024
diff changeset
   159
89c80c3dc584 allow http authentication information to be specified in the configuration
Sune Foldager <cryo@cyanite.org>
parents: 8024
diff changeset
   160
    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
   161
    foo.username = foo
89c80c3dc584 allow http authentication information to be specified in the configuration
Sune Foldager <cryo@cyanite.org>
parents: 8024
diff changeset
   162
    foo.password = bar
89c80c3dc584 allow http authentication information to be specified in the configuration
Sune Foldager <cryo@cyanite.org>
parents: 8024
diff changeset
   163
    foo.schemes = http https
89c80c3dc584 allow http authentication information to be specified in the configuration
Sune Foldager <cryo@cyanite.org>
parents: 8024
diff changeset
   164
8847
7951f385fcb7 url: support client certificate files over HTTPS (issue643)
Henrik Stuart <hg@hstuart.dk>
parents: 8810
diff changeset
   165
    bar.prefix = secure.example.org
7951f385fcb7 url: support client certificate files over HTTPS (issue643)
Henrik Stuart <hg@hstuart.dk>
parents: 8810
diff changeset
   166
    bar.key = path/to/file.key
7951f385fcb7 url: support client certificate files over HTTPS (issue643)
Henrik Stuart <hg@hstuart.dk>
parents: 8810
diff changeset
   167
    bar.cert = path/to/file.cert
7951f385fcb7 url: support client certificate files over HTTPS (issue643)
Henrik Stuart <hg@hstuart.dk>
parents: 8810
diff changeset
   168
    bar.schemes = https
7951f385fcb7 url: support client certificate files over HTTPS (issue643)
Henrik Stuart <hg@hstuart.dk>
parents: 8810
diff changeset
   169
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   170
Supported arguments:
8333
89c80c3dc584 allow http authentication information to be specified in the configuration
Sune Foldager <cryo@cyanite.org>
parents: 8024
diff changeset
   171
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   172
``prefix``
9624
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   173
    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
   174
    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
   175
    (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
   176
    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
   177
    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
   178
    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
   179
``username``
8847
7951f385fcb7 url: support client certificate files over HTTPS (issue643)
Henrik Stuart <hg@hstuart.dk>
parents: 8810
diff changeset
   180
    Optional. Username 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
   181
    remote site requires basic or digest authentication, the user
7951f385fcb7 url: support client certificate files over HTTPS (issue643)
Henrik Stuart <hg@hstuart.dk>
parents: 8810
diff changeset
   182
    will be prompted for it.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   183
``password``
8847
7951f385fcb7 url: support client certificate files over HTTPS (issue643)
Henrik Stuart <hg@hstuart.dk>
parents: 8810
diff changeset
   184
    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
   185
    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
   186
    will be prompted for it.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   187
``key``
8847
7951f385fcb7 url: support client certificate files over HTTPS (issue643)
Henrik Stuart <hg@hstuart.dk>
parents: 8810
diff changeset
   188
    Optional. PEM encoded client certificate key file.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   189
``cert``
8847
7951f385fcb7 url: support client certificate files over HTTPS (issue643)
Henrik Stuart <hg@hstuart.dk>
parents: 8810
diff changeset
   190
    Optional. PEM encoded client certificate chain file.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   191
``schemes``
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   192
    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
   193
    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
   194
    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
   195
    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
   196
    Default: https.
89c80c3dc584 allow http authentication information to be specified in the configuration
Sune Foldager <cryo@cyanite.org>
parents: 8024
diff changeset
   197
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   198
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
   199
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
   200
8333
89c80c3dc584 allow http authentication information to be specified in the configuration
Sune Foldager <cryo@cyanite.org>
parents: 8024
diff changeset
   201
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   202
``decode/encode``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   203
"""""""""""""""""
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   204
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
   205
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
   206
localization/canonicalization of files.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   207
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   208
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
   209
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
   210
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
   211
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
   212
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
   213
For each file only the first matching filter applies.
1258
1945754e466b Add file encoding/decoding support
mpm@selenic.com
parents: 1171
diff changeset
   214
9835
6a07e74370d7 hgrc.5: mark some words as inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9830
diff changeset
   215
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
   216
``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
   217
9835
6a07e74370d7 hgrc.5: mark some words as inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9830
diff changeset
   218
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
   219
data on stdout.
1293
a6ffcebd3315 Enhance the file filtering capabilities.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1258
diff changeset
   220
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   221
Pipe example::
1258
1945754e466b Add file encoding/decoding support
mpm@selenic.com
parents: 1171
diff changeset
   222
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   223
  [encode]
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   224
  # 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
   225
  # 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
   226
  *.gz = pipe: gunzip
1258
1945754e466b Add file encoding/decoding support
mpm@selenic.com
parents: 1171
diff changeset
   227
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   228
  [decode]
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   229
  # 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
   230
  # 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
   231
  *.gz = gzip
1258
1945754e466b Add file encoding/decoding support
mpm@selenic.com
parents: 1171
diff changeset
   232
9835
6a07e74370d7 hgrc.5: mark some words as inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9830
diff changeset
   233
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
   234
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
   235
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
   236
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
   237
the command.
1293
a6ffcebd3315 Enhance the file filtering capabilities.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1258
diff changeset
   238
9700
26fc6024dd06 doc: use reST note directive
Martin Geisler <mg@lazybytes.net>
parents: 9699
diff changeset
   239
.. note:: The tempfile mechanism is recommended for Windows systems,
26fc6024dd06 doc: use reST note directive
Martin Geisler <mg@lazybytes.net>
parents: 9699
diff changeset
   240
   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
   241
   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
   242
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   243
The most common usage is for LF <-> CRLF translation on Windows. For
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   244
this, use the "smart" converters which check for binary files::
1293
a6ffcebd3315 Enhance the file filtering capabilities.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1258
diff changeset
   245
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   246
  [extensions]
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   247
  hgext.win32text =
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   248
  [encode]
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   249
  ** = cleverencode:
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   250
  [decode]
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   251
  ** = cleverdecode:
5678
d3909674fcea man 5 hgrc implied you need to use external tools to do CRLF translation.
Jesse Glick <jesse.glick@sun.com>
parents: 5634
diff changeset
   252
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   253
or if you only want to translate certain files::
5678
d3909674fcea man 5 hgrc implied you need to use external tools to do CRLF translation.
Jesse Glick <jesse.glick@sun.com>
parents: 5634
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
  [extensions]
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   256
  hgext.win32text =
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   257
  [encode]
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   258
  **.txt = dumbencode:
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   259
  [decode]
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   260
  **.txt = dumbdecode:
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   261
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   262
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   263
``defaults``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   264
""""""""""""
1293
a6ffcebd3315 Enhance the file filtering capabilities.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1258
diff changeset
   265
9630
24dad078603b doc/hgrc.5.txt: deprecate [defaults]
Adrian Buehlmann <adrian@cadifra.com>
parents: 9624
diff changeset
   266
(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
   267
9835
6a07e74370d7 hgrc.5: mark some words as inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9830
diff changeset
   268
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
   269
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
   270
9746
2dee9a359262 hgrc.5: mark more inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9745
diff changeset
   271
The following example makes ``hg log`` run in verbose mode, and ``hg
2dee9a359262 hgrc.5: mark more inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9745
diff changeset
   272
status`` show only the modified files, by default::
5081
ea7b982b6c08 Remove trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents: 4717
diff changeset
   273
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   274
  [defaults]
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   275
  log = -v
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   276
  status = -m
5081
ea7b982b6c08 Remove trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents: 4717
diff changeset
   277
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   278
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
   279
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
   280
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
   281
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   282
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   283
``diff``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   284
""""""""
3039
77637938d43d add document on command defaults
TK Soh <teekaysoh@yahoo.com>
parents: 3021
diff changeset
   285
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   286
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
   287
defaults to False.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   288
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   289
``git``
4011
15955d84bc68 add [diff] section to hgrc documentation
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 3835
diff changeset
   290
    Use git extended diff format.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   291
``nodates``
4011
15955d84bc68 add [diff] section to hgrc documentation
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 3835
diff changeset
   292
    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
   293
``showfunc``
4011
15955d84bc68 add [diff] section to hgrc documentation
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 3835
diff changeset
   294
    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
   295
``ignorews``
4011
15955d84bc68 add [diff] section to hgrc documentation
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 3835
diff changeset
   296
    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
   297
``ignorewsamount``
4011
15955d84bc68 add [diff] section to hgrc documentation
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 3835
diff changeset
   298
    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
   299
``ignoreblanklines``
4011
15955d84bc68 add [diff] section to hgrc documentation
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 3835
diff changeset
   300
    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
   301
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   302
``email``
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
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
   305
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   306
``from``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   307
    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
   308
    of outgoing messages.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   309
``to``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   310
    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
   311
``cc``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   312
    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
   313
    email addresses.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   314
``bcc``
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   315
    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
   316
    email addresses.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   317
``method``
9835
6a07e74370d7 hgrc.5: mark some words as inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9830
diff changeset
   318
    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
   319
    (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
   320
    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
   321
    (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
   322
    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
   323
    ``/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
   324
``charsets``
8773
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   325
    Optional. Comma-separated list of character sets considered
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   326
    convenient for recipients. Addresses, headers, and parts not
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   327
    containing patches of outgoing messages will be encoded in the
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   328
    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
   329
    (``$HGENCODING``, ``ui.fallbackencoding``) succeeds. If correct
8773
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   330
    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
   331
    empty (explicit) list.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   332
9744
e8990ce2f2d4 hgrc.5: use enumerated list for email charsets
Martin Geisler <mg@lazybytes.net>
parents: 9743
diff changeset
   333
    Order of outgoing email character sets:
7241
421f4cbddd68 hgrc.5: explain order of mail.charsets
Christian Ebert <blacktrash@gmx.net>
parents: 7235
diff changeset
   334
9744
e8990ce2f2d4 hgrc.5: use enumerated list for email charsets
Martin Geisler <mg@lazybytes.net>
parents: 9743
diff changeset
   335
    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
   336
    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
   337
    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
   338
    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
   339
    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
   340
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   341
Email example::
2292
903ab41ac7eb allow to send email using sendmail.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2288
diff changeset
   342
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   343
  [email]
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   344
  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
   345
  method = /usr/sbin/sendmail
8773
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   346
  # 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
   347
  # 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
   348
  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
   349
2200
9f43b6e24232 move mail sending code into core, so extensions can share it.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2197
diff changeset
   350
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   351
``extensions``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   352
""""""""""""""
2200
9f43b6e24232 move mail sending code into core, so extensions can share it.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2197
diff changeset
   353
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   354
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
   355
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
   356
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   357
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
   358
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
   359
after the ``=``.
2211
b8b7a79a4d88 document [extensions] in doc/hgrc.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2209
diff changeset
   360
9624
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   361
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
   362
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
   363
defines the extension.
2211
b8b7a79a4d88 document [extensions] in doc/hgrc.5.txt.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2209
diff changeset
   364
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   365
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
   366
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
   367
``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
   368
supplied.
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   369
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   370
Example for ``~/.hgrc``::
6175
7f9f3233a2c6 add explicit extension disabling syntax to hgrc.5
Steve Borho <steve@borho.org>
parents: 6142
diff changeset
   371
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   372
  [extensions]
8773
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   373
  # (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
   374
  hgext.mq =
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   375
  # (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
   376
  myfeature = ~/.hgext/myfeature.py
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   377
2387
62ce297f214f Expand '~' in path to extensions.
Markus F.X.J. Oberhumer <markus@oberhumer.com>
parents: 2358
diff changeset
   378
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   379
``format``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   380
""""""""""
4163
fe41d9a186ab Allow disabling store format to work with absurdly long filenames
Matt Mackall <mpm@selenic.com>
parents: 4084
diff changeset
   381
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   382
``usestore``
4163
fe41d9a186ab Allow disabling store format to work with absurdly long filenames
Matt Mackall <mpm@selenic.com>
parents: 4084
diff changeset
   383
    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
   384
    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
   385
    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
   386
    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
   387
    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
   388
    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
   389
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   390
``usefncache``
7235
7488a1f14e3c Document config option format.usefncache and improve format.usestore docs.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 7117
diff changeset
   391
    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
   392
    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
   393
    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
   394
    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
   395
    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
   396
    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
   397
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   398
``merge-patterns``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   399
""""""""""""""""""
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   400
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   401
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
   402
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
   403
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
   404
root.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   405
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   406
Example::
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   407
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   408
  [merge-patterns]
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   409
  **.c = kdiff3
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   410
  **.jpg = myimgmerge
6010
83d193a513c8 add merge sections to hgrc.5
Steve Borho <steve@borho.org>
parents: 5997
diff changeset
   411
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   412
``merge-tools``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   413
"""""""""""""""
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   414
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   415
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
   416
merges.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   417
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   418
Example ``~/.hgrc``::
6010
83d193a513c8 add merge sections to hgrc.5
Steve Borho <steve@borho.org>
parents: 5997
diff changeset
   419
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   420
  [merge-tools]
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   421
  # Override stock tool location
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   422
  kdiff3.executable = ~/bin/kdiff3
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   423
  # Specify command line
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   424
  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
   425
  # Give higher priority
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   426
  kdiff3.priority = 1
6010
83d193a513c8 add merge sections to hgrc.5
Steve Borho <steve@borho.org>
parents: 5997
diff changeset
   427
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   428
  # Define new tool
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   429
  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
   430
  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
   431
  myHtmlTool.priority = 1
6010
83d193a513c8 add merge sections to hgrc.5
Steve Borho <steve@borho.org>
parents: 5997
diff changeset
   432
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   433
Supported arguments:
6445
a1db3d8b9b8a hgrc.5: fix subsection formatting
Christian Ebert <blacktrash@gmx.net>
parents: 6325
diff changeset
   434
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   435
``priority``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   436
  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
   437
  Default: 0.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   438
``executable``
10485
677fee0a0604 hgrc.5: document use of environment variables on Windows
Steve Borho <steve@borho.org>
parents: 10419
diff changeset
   439
  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
   440
  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
   441
  Default: the tool name.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   442
``args``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   443
  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
   444
  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
   445
  variables: ``$base``, ``$local``, ``$other``, ``$output``.
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   446
  Default: ``$local $base $other``
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   447
``premerge``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   448
  Attempt to run internal non-interactive 3-way merge tool before
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   449
  launching external tool.
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   450
  Default: True
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   451
``binary``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   452
  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
   453
  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
   454
``symlink``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   455
  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
   456
  selected by file pattern match.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   457
``checkconflicts``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   458
  Check whether there are conflicts even though the tool reported
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   459
  success.
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   460
  Default: False
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   461
``checkchanged``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   462
  Check whether outputs were written even though the tool reported
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   463
  success.
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   464
  Default: False
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   465
``fixeol``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   466
  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
   467
  Default: False
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   468
``gui``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   469
  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
   470
``regkey``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   471
  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
   472
  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
   473
  ``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
   474
  Default: None
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   475
``regname``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   476
  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
   477
  unnamed (default) value.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   478
``regappend``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   479
  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
   480
  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
   481
  Default: None
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   482
6010
83d193a513c8 add merge sections to hgrc.5
Steve Borho <steve@borho.org>
parents: 5997
diff changeset
   483
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   484
``hooks``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   485
"""""""""
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   486
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
   487
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
   488
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
   489
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
   490
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
   491
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   492
Example ``.hg/hgrc``::
1485
625f3f13d7be mention running multiple hooks in the doc
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1316
diff changeset
   493
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   494
  [hooks]
9830
ab1625ccf3a9 hgrc.5: oft-requested "hg update" hook example
Martin Geisler <mg@lazybytes.net>
parents: 9792
diff changeset
   495
  # update working directory after adding changesets
ab1625ccf3a9 hgrc.5: oft-requested "hg update" hook example
Martin Geisler <mg@lazybytes.net>
parents: 9792
diff changeset
   496
  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
   497
  # 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
   498
  incoming =
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   499
  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
   500
  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
   501
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   502
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
   503
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
   504
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
   505
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   506
``changegroup``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   507
  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
   508
  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
   509
  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
   510
``commit``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   511
  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
   512
  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
   513
  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
   514
``incoming``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   515
  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
   516
  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
   517
  ``$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
   518
``outgoing``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   519
  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
   520
  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
   521
  ``$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
   522
``post-<command>``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   523
  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
   524
  contents of the command line are passed as ``$HG_ARGS`` and the result
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   525
  code in ``$HG_RESULT``. Hook failure is ignored.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   526
``pre-<command>``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   527
  Run before executing the associated command. The contents of the
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   528
  command line are passed as ``$HG_ARGS``. If the hook returns failure,
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   529
  the command doesn't execute and Mercurial returns the failure
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   530
  code.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   531
``prechangegroup``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   532
  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
   533
  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
   534
  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
   535
  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
   536
``precommit``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   537
  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
   538
  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
   539
  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
   540
``preoutgoing``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   541
  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
   542
  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
   543
  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
   544
  (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
   545
  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
   546
  ``$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
   547
  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
   548
  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
   549
``pretag``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   550
  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
   551
  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
   552
  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
   553
  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
   554
``pretxnchangegroup``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   555
  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
   556
  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
   557
  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
   558
  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
   559
  ``$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
   560
  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
   561
  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
   562
  ``$HG_URL``.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   563
``pretxncommit``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   564
  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
   565
  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
   566
  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
   567
  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
   568
  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
   569
  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
   570
``preupdate``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   571
  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
   572
  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
   573
  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
   574
  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
   575
``tag``
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   576
  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
   577
  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
   578
  repository if ``$HG_LOCAL=0``.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   579
``update``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   580
  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
   581
  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
   582
  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
   583
  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
   584
9700
26fc6024dd06 doc: use reST note directive
Martin Geisler <mg@lazybytes.net>
parents: 9699
diff changeset
   585
.. 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
   586
   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
   587
   called in the appropriate contexts for influencing transactions.
26fc6024dd06 doc: use reST note directive
Martin Geisler <mg@lazybytes.net>
parents: 9699
diff changeset
   588
   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
   589
   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
   590
9700
26fc6024dd06 doc: use reST note directive
Martin Geisler <mg@lazybytes.net>
parents: 9699
diff changeset
   591
.. 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
   592
   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
   593
   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
   594
   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
   595
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   596
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
   597
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   598
  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
   599
  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
   600
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   601
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
   602
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
   603
``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
   604
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
   605
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
   606
``HG_`` prefix, and names in lower case.
2155
ff255b41b4aa support hooks written in python.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2003
diff changeset
   607
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   608
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
   609
is treated as a failure.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   610
2155
ff255b41b4aa support hooks written in python.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2003
diff changeset
   611
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   612
``http_proxy``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   613
""""""""""""""
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   614
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
   615
proxy.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   616
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   617
``host``
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   618
    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
   619
    "myproxy:8000".
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   620
``no``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   621
    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
   622
    the proxy.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   623
``passwd``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   624
    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
   625
``user``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   626
    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
   627
``always``
4cfd0d56be6d doc: add missing documentation for http_proxy.always
Henrik Stuart <hg@hstuart.dk>
parents: 10409
diff changeset
   628
    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
   629
    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
   630
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   631
``smtp``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   632
""""""""
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   633
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
   634
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   635
``host``
2853
619f1c65384c Adjusted documentation for hgrc's "[smtp] host" for change in 9f745d3675d4.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 2691
diff changeset
   636
    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
   637
``port``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   638
    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
   639
``tls``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   640
    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
   641
    False. Default: False.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   642
``username``
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   643
    Optional. User name to authenticate to SMTP server with. If
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   644
    username is specified, password must also be specified.
2200
9f43b6e24232 move mail sending code into core, so extensions can share it.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2197
diff changeset
   645
    Default: none.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   646
``password``
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   647
    Optional. Password to authenticate to SMTP server with. If
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   648
    username is specified, password must also be specified.
2200
9f43b6e24232 move mail sending code into core, so extensions can share it.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2197
diff changeset
   649
    Default: none.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   650
``local_hostname``
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   651
    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
   652
    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
   653
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   654
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   655
``patch``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   656
"""""""""
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   657
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
   658
command or with Mercurial Queues extension.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   659
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   660
``eol``
8810
ac92775b3b80 Add patch.eol to ignore EOLs when patching (issue1019)
Patrick Mezard <pmezard@gmail.com>
parents: 8782
diff changeset
   661
    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
   662
    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
   663
    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
   664
    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
   665
    ``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
   666
    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
   667
    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
   668
    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
   669
    Default: strict.
ac92775b3b80 Add patch.eol to ignore EOLs when patching (issue1019)
Patrick Mezard <pmezard@gmail.com>
parents: 8782
diff changeset
   670
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   671
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   672
``paths``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   673
"""""""""
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   674
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
   675
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
   676
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
   677
the following entries.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   678
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   679
``default``
2277
066d0055e430 Add more specific documentation about defaults for the [paths] section
Daniel <byteshack@gmail.com>
parents: 2266
diff changeset
   680
    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
   681
    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
   682
    cloned.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   683
``default-push``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   684
    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
   685
    is specified.
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   686
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   687
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   688
``profiling``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   689
"""""""""""""
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   690
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
   691
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
   692
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
   693
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
   694
using lsprof.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   695
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   696
``format``
8023
fd9debb3ea1b profiling: Adding a profiling.format config variable
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 8022
diff changeset
   697
    Profiling format.
fd9debb3ea1b profiling: Adding a profiling.format config variable
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 8022
diff changeset
   698
    Default: text.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   699
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   700
    ``text``
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   701
      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
   702
      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
   703
      not kept.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   704
    ``kcachegrind``
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   705
      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
   706
      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
   707
      kcachegrind.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   708
``output``
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   709
    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
   710
    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
   711
    stderr
8022
4f3fdfaa3874 profiling: Adding profiling.output config variable
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 7916
diff changeset
   712
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   713
``server``
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
Controls generic server settings.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   716
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   717
``uncompressed``
8773
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   718
    Whether to allow clients to clone a repository using the
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   719
    uncompressed streaming protocol. This transfers about 40% more
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   720
    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
   721
    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
   722
    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
   723
    regular clone. Over most WAN connections (anything slower than
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   724
    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
   725
    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
   726
    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
   727
    Default is True.
2621
5a5852a417b1 clone: disable stream support on server side by default.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2583
diff changeset
   728
10419
992dc3d39357 hgrc: update docs for the server section
Matt Mackall <mpm@selenic.com>
parents: 10416
diff changeset
   729
``validate``
992dc3d39357 hgrc: update docs for the server section
Matt Mackall <mpm@selenic.com>
parents: 10416
diff changeset
   730
    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
   731
    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
   732
    present. Default is False.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   733
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   734
``trusted``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   735
"""""""""""
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   736
For security reasons, 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
   737
``.hg/hgrc`` file from a repository if it doesn't belong to a trusted
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   738
user or to a trusted group. The main exception is the web interface,
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   739
which automatically uses some safe settings, since it's common to
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   740
serve repositories from different users.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   741
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   742
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
   743
current user is always trusted. To trust everybody, list a user or a
9624
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   744
group with name ``*``.
3552
9b52239dc740 save settings from untrusted config files in a separate configparser
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3551
diff changeset
   745
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   746
``users``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   747
  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
   748
``groups``
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   749
  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
   750
3551
3b07e223534b Only read .hg/hgrc files from trusted users/groups
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 3489
diff changeset
   751
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   752
``ui``
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
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   755
User interface controls.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   756
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   757
``archivemeta``
8773
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   758
    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
   759
    (hashes for the repository base and for tip) in archives created
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   760
    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
   761
    Default is True.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   762
``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
   763
    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
   764
    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
   765
    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
   766
    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
   767
    Default is False.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   768
``debug``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   769
    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
   770
``editor``
9746
2dee9a359262 hgrc.5: mark more inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9745
diff changeset
   771
    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
   772
``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
   773
    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
   774
    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
   775
``ignore``
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   776
    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
   777
    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
   778
    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
   779
    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
   780
    ``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
   781
    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
   782
``interactive``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   783
    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
   784
``logtemplate``
1907
7718885070b1 let commands that show changesets use templates.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1788
diff changeset
   785
    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
   786
``merge``
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   787
    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
   788
    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
   789
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   790
    ``internal:local``
6010
83d193a513c8 add merge sections to hgrc.5
Steve Borho <steve@borho.org>
parents: 5997
diff changeset
   791
        keep the local version
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   792
    ``internal:other``
6010
83d193a513c8 add merge sections to hgrc.5
Steve Borho <steve@borho.org>
parents: 5997
diff changeset
   793
        use the other version
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   794
    ``internal:merge``
6010
83d193a513c8 add merge sections to hgrc.5
Steve Borho <steve@borho.org>
parents: 5997
diff changeset
   795
        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
   796
    ``internal:fail``
6010
83d193a513c8 add merge sections to hgrc.5
Steve Borho <steve@borho.org>
parents: 5997
diff changeset
   797
        fail to merge
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   798
8769
a5d0e821ab77 hgrc.5: reformatted to avoid big chunks of monospaced text
Martin Geisler <mg@lazybytes.net>
parents: 8768
diff changeset
   799
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
   800
merge-tools_ section.
6445
a1db3d8b9b8a hgrc.5: fix subsection formatting
Christian Ebert <blacktrash@gmx.net>
parents: 6325
diff changeset
   801
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   802
``patch``
9746
2dee9a359262 hgrc.5: mark more inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9745
diff changeset
   803
    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
   804
    PATH if unset.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   805
``quiet``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   806
    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
   807
``remotecmd``
9746
2dee9a359262 hgrc.5: mark more inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9745
diff changeset
   808
    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
   809
``report_untrusted``
9161
e8b653a4b8da doc: fixup font markup in man pages
Martin Geisler <mg@lazybytes.net>
parents: 9158
diff changeset
   810
    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
   811
    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
   812
``slash``
9624
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   813
    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
   814
    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
   815
    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
   816
    backslash character (``\``)).
4527
b422b558015b Add ui.slash hgrc setting
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents: 4435
diff changeset
   817
    Default is False.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   818
``ssh``
9746
2dee9a359262 hgrc.5: mark more inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9745
diff changeset
   819
    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
   820
``strict``
2988
63c3a1921a67 Add ui.strict config item.
Bryan O'Sullivan <bos@serpentine.com>
parents: 2853
diff changeset
   821
    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
   822
    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
   823
``style``
4715
ad45209a7c7a Fixed sorting inside nearly sorted sections in hgrc.5
Thomas Arendsen Hein <thomas@intevation.de>
parents: 4709
diff changeset
   824
    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
   825
``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
   826
    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
   827
    means no timeout. Default is 600.
9697
59e5ae188440 hgrc.5: document ui.traceback setting
Martin Geisler <mg@lazybytes.net>
parents: 9659
diff changeset
   828
``traceback``
59e5ae188440 hgrc.5: document ui.traceback setting
Martin Geisler <mg@lazybytes.net>
parents: 9659
diff changeset
   829
    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
   830
    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
   831
    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
   832
    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
   833
``username``
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   834
    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
   835
    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
   836
    <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
   837
    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
   838
    in a different hgrc file (e.g. ``$HOME/.hgrc``, if the admin set
9746
2dee9a359262 hgrc.5: mark more inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9745
diff changeset
   839
    ``username =``  in the system hgrc).
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   840
``verbose``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   841
    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
   842
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   843
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   844
``web``
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   845
"""""""
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   846
Web interface configuration.
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   847
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   848
``accesslog``
938
54b2a42e501e hgweb: add [web] section to hgrc
mpm@selenic.com
parents: 705
diff changeset
   849
    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
   850
``address``
1171
a425bb927ede Sort items in each hgrc section. Add web/description.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1079
diff changeset
   851
    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
   852
``allow_archive``
2358
8819fc1dcf4b hgweb: add allow_archive support to [web] section of hgrc
TK Soh <teekaysoh@yahoo.com>
parents: 2318
diff changeset
   853
    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
   854
    Default is empty.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   855
``allowbz2``
8773
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   856
    (DEPRECATED) Whether to allow .tar.bz2 downloading of repository
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   857
    revisions.
9699
7f4a792e50eb hgrc.5: capitalize True and False consistently
Martin Geisler <mg@lazybytes.net>
parents: 9697
diff changeset
   858
    Default is False.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   859
``allowgz``
8773
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   860
    (DEPRECATED) Whether to allow .tar.gz downloading of repository
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   861
    revisions.
9699
7f4a792e50eb hgrc.5: capitalize True and False consistently
Martin Geisler <mg@lazybytes.net>
parents: 9697
diff changeset
   862
    Default is False.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   863
``allowpull``
9699
7f4a792e50eb hgrc.5: capitalize True and False consistently
Martin Geisler <mg@lazybytes.net>
parents: 9697
diff changeset
   864
    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
   865
``allow_push``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   866
    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
   867
    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
   868
    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
   869
    must have been authenticated, and the authenticated user name must
9746
2dee9a359262 hgrc.5: mark more inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9745
diff changeset
   870
    be present in this list (separated by whitespace or ``,``). The
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   871
    contents of the allow_push list are examined after the deny_push
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   872
    list.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   873
``allow_read``
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   874
    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
   875
    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
   876
    repository access to the user. If this list is not empty, and the
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   877
    user is unauthenticated or not present in the list (separated by
9746
2dee9a359262 hgrc.5: mark more inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9745
diff changeset
   878
    whitespace or ``,``), then access is denied for the user. If the
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   879
    list is empty or not set, then access is permitted to all users by
9624
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   880
    default. Setting allow_read to the special value ``*`` is equivalent
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   881
    to it not being set (i.e. access is permitted to all users). The
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   882
    contents of the allow_read list are examined after the deny_read
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   883
    list.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   884
``allowzip``
8773
bf8ff9e8a506 hgrc.5: spell check
Martin Geisler <mg@lazybytes.net>
parents: 8772
diff changeset
   885
    (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
   886
    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
   887
``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
   888
    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
   889
    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
   890
    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
   891
``cacerts``
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   892
    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
   893
    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
   894
    as follows::
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   895
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   896
        -----BEGIN CERTIFICATE-----
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   897
        ... (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
   898
        -----END CERTIFICATE-----
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   899
        -----BEGIN CERTIFICATE-----
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   900
        ... (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
   901
        -----END CERTIFICATE-----
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   902
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   903
    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
   904
    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
   905
    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
   906
    ``http://pypi.python.org``.
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   907
4c94a3df4b10 url: SSL server certificate verification using web.cacerts file (issue1174)
Henrik Stuart <hg@hstuart.dk>
parents: 10391
diff changeset
   908
    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
   909
    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
   910
    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
   911
``contact``
2430
4ccd71b83d5e Add web.contact to the hgrc documentation.
"Daniel Santa Cruz <byteshack@gmail.com>"
parents: 2387
diff changeset
   912
    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
   913
    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
   914
``deny_push``
6446
ee5313bc3c0c asciidoc: consistently use 1 space after full stop
Christian Ebert <blacktrash@gmx.net>
parents: 6445
diff changeset
   915
    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
   916
    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
   917
    denied push. Otherwise, unauthenticated users are all denied, and
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   918
    any authenticated user name present in this list (separated by
9746
2dee9a359262 hgrc.5: mark more inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9745
diff changeset
   919
    whitespace or ``,``) is also denied. The contents of the deny_push
2466
e10665147d26 push over http: server side authorization support.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2430
diff changeset
   920
    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
   921
``deny_read``
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   922
    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
   923
    not empty, unauthenticated users are all denied, and any
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   924
    authenticated user name present in this list (separated by
9746
2dee9a359262 hgrc.5: mark more inline literals
Martin Geisler <mg@lazybytes.net>
parents: 9745
diff changeset
   925
    whitespace or ``,``) is also denied access to the repository. If set
9624
585d2ffe969b doc, help: stream-line use of inline-literals
Martin Geisler <mg@lazybytes.net>
parents: 9569
diff changeset
   926
    to the special value ``*``, all remote users are denied access
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   927
    (rarely needed ;). If deny_read is empty or not set, the
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   928
    determination of repository access depends on the presence and
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   929
    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
   930
    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
   931
    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
   932
    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
   933
    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
   934
    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
   935
    list.
9363
8635b33eaade hgweb: add web.descend configuration variable
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 9162
diff changeset
   936
``descend``
8635b33eaade hgweb: add web.descend configuration variable
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 9162
diff changeset
   937
    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
   938
    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
   939
    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
   940
``description``
1171
a425bb927ede Sort items in each hgrc section. Add web/description.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1079
diff changeset
   941
    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
   942
    Default is "unknown".
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   943
``encoding``
4715
ad45209a7c7a Fixed sorting inside nearly sorted sections in hgrc.5
Thomas Arendsen Hein <thomas@intevation.de>
parents: 4709
diff changeset
   944
    Character encoding name.
ad45209a7c7a Fixed sorting inside nearly sorted sections in hgrc.5
Thomas Arendsen Hein <thomas@intevation.de>
parents: 4709
diff changeset
   945
    Example: "UTF-8"
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   946
``errorlog``
1171
a425bb927ede Sort items in each hgrc section. Add web/description.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1079
diff changeset
   947
    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
   948
``hidden``
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   949
    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
   950
    Default is False.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   951
``ipv6``
9699
7f4a792e50eb hgrc.5: capitalize True and False consistently
Martin Geisler <mg@lazybytes.net>
parents: 9697
diff changeset
   952
    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
   953
``name``
1171
a425bb927ede Sort items in each hgrc section. Add web/description.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1079
diff changeset
   954
    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
   955
    working directory.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   956
``maxchanges``
1171
a425bb927ede Sort items in each hgrc section. Add web/description.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1079
diff changeset
   957
    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
   958
``maxfiles``
1171
a425bb927ede Sort items in each hgrc section. Add web/description.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1079
diff changeset
   959
    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
   960
``port``
1171
a425bb927ede Sort items in each hgrc section. Add web/description.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1079
diff changeset
   961
    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
   962
``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
   963
    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
   964
``push_ssl``
2466
e10665147d26 push over http: server side authorization support.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2430
diff changeset
   965
    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
   966
    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
   967
``staticurl``
8730
01f0ddb90342 hgrc.5: wrap lines at 70 chars (whitespace cleanup)
Martin Geisler <mg@lazybytes.net>
parents: 8727
diff changeset
   968
    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
   969
    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
   970
    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
   971
    Example: ``http://hgserver/static/``.
9158
d6eecafaf12f doc: use reStructuredText for man and HTML pages
Martin Geisler <mg@lazybytes.net>
parents: 8900
diff changeset
   972
``stripes``
2666
ebf033bc8eb2 hgweb: Configurable zebra stripes
Frank Kingswood <frank@kingswood-consulting.co.uk>
parents: 2622
diff changeset
   973
    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
   974
    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
   975
``style``
1171
a425bb927ede Sort items in each hgrc section. Add web/description.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1079
diff changeset
   976
    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
   977
``templates``
1171
a425bb927ede Sort items in each hgrc section. Add web/description.
Bryan O'Sullivan <bos@serpentine.com>
parents: 1079
diff changeset
   978
    Where to find the HTML templates. Default is install path.
1079
a37974035f1f Document archive download options
mpm@selenic.com
parents: 986
diff changeset
   979
938
54b2a42e501e hgweb: add [web] section to hgrc
mpm@selenic.com
parents: 705
diff changeset
   980
9792
dd1a95ccbe07 doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents: 9784
diff changeset
   981
Author
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   982
------
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   983
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
   984
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   985
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
   986
9792
dd1a95ccbe07 doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents: 9784
diff changeset
   987
See Also
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   988
--------
9162
2399362b3bb0 doc: link man pages to one another
Martin Geisler <mg@lazybytes.net>
parents: 9161
diff changeset
   989
|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
   990
9792
dd1a95ccbe07 doc: use titlecase in man page section titles
Martin Geisler <mg@lazybytes.net>
parents: 9784
diff changeset
   991
Copying
671
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   992
-------
efa4a7e2f322 Move hgrc documentation out to its own man page, hgrc(5).
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
   993
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
   994
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
   995
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
   996
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
   997
2399362b3bb0 doc: link man pages to one another
Martin Geisler <mg@lazybytes.net>
parents: 9161
diff changeset
   998
.. include:: common.txt