view mercurial/help/config.txt @ 14077:c285bdb0572a

util.url: copy urllib.unquote() into util to improve startup times The ui class uses util.hasscheme() in a couple of places, causing hg to import urllib even when it doesn't need to. This copies urllib.unquote() to avoid that import. perfstartup time before the URL refactoring (8796fb6af67e): ! wall 0.050692 comb 0.000000 user 0.000000 sys 0.000000 (best of 100) before this change: ! wall 0.064742 comb 0.000000 user 0.000000 sys 0.000000 (best of 100) after this change: ! wall 0.052126 comb 0.000000 user 0.000000 sys 0.000000 (best of 100
author Brodie Rao <brodie@bitheap.org>
date Sat, 30 Apr 2011 09:43:23 -0700
parents 86b5cc1e8be8
children ff4126ce9301
line wrap: on
line source

Mercurial reads configuration data from several files, if they exist.
Below we list the most specific file first.

On Windows, these configuration files are read:

- ``<repo>\.hg\hgrc``
- ``%USERPROFILE%\.hgrc``
- ``%USERPROFILE%\mercurial.ini``
- ``%HOME%\.hgrc``
- ``%HOME%\mercurial.ini``
- ``C:\mercurial\mercurial.ini`` (unless regkey or hgrc.d\ or mercurial.ini found)
- ``HKEY_LOCAL_MACHINE\SOFTWARE\Mercurial`` (unless hgrc.d\ or mercurial.ini found)
- ``<hg.exe-dir>\hgrc.d\*.rc`` (unless mercurial.ini found)
- ``<hg.exe-dir>\mercurial.ini``

On Unix, these files are read:

- ``<repo>/.hg/hgrc``
- ``$HOME/.hgrc``
- ``/etc/mercurial/hgrc``
- ``/etc/mercurial/hgrc.d/*.rc``
- ``<install-root>/etc/mercurial/hgrc``
- ``<install-root>/etc/mercurial/hgrc.d/*.rc``

These files do not exist by default and you will have to create the
appropriate configuration files yourself: global configuration like
the username setting is typically put into
``%USERPROFILE%\mercurial.ini`` or ``$HOME/.hgrc`` and local
configuration is put into the per-repository ``<repo>/.hg/hgrc`` file.

If there is a per-repository configuration file which is not owned by
the active user, Mercurial will warn you that the file is skipped::

  not trusting file <repo>/.hg/hgrc from untrusted user USER, group GROUP

If this bothers you, the warning can be silenced (the file would still
be ignored) or trust can be established. Use one of the following
settings, the syntax is explained below:

- ``ui.report_untrusted = False``
- ``trusted.users = USER``
- ``trusted.groups = GROUP``

The configuration files for Mercurial use a simple ini-file format. A
configuration file consists of sections, led by a ``[section]`` header
and followed by ``name = value`` entries::

  [ui]
  username = Firstname Lastname <firstname.lastname@example.net>
  verbose = True

The above entries will be referred to as ``ui.username`` and
``ui.verbose``, respectively. Please see the hgrc man page for a full
description of the possible configuration values:

- on Unix-like systems: ``man hgrc``
- online: http://www.selenic.com/mercurial/hgrc.5.html