# HG changeset patch # User Martin Geisler # Date 1274805944 -7200 # Node ID e7adcef1504b632e0193f36fa3e48811a6767c50 # Parent 39a7f69a0a9a04bcd0135daa165e89c696a71c35# Parent e655b378ce735fd88ba68539e0c6ad4c403a190e Merge with stable diff -r 39a7f69a0a9a -r e7adcef1504b doc/hgrc.5.txt --- a/doc/hgrc.5.txt Tue May 25 09:57:19 2010 +0200 +++ b/doc/hgrc.5.txt Tue May 25 18:45:44 2010 +0200 @@ -90,7 +90,8 @@ ------ A configuration file consists of sections, led by a ``[section]`` header -and followed by ``name = value`` entries:: +and followed by ``name = value`` entries (sometimes called +``configuration keys``):: [spam] eggs=ham @@ -102,6 +103,45 @@ removed from values. Empty lines are skipped. Lines beginning with ``#`` or ``;`` are ignored and may be used to provide comments. +Configuration keys can be set multiple times, in which case mercurial +will use the value that was configured last. As an example:: + + [spam] + eggs=large + ham=serrano + eggs=small + +This would set the configuration key named ``eggs`` to ``small``. + +It is also possible to define a section multiple times. A section can +be redefined on the same and/or on different hgrc files. For example:: + + [foo] + eggs=large + ham=serrano + eggs=small + + [bar] + eggs=ham + green= + eggs + + [foo] + ham=prosciutto + eggs=medium + bread=toasted + +This would set the ``eggs``, ``ham``, and ``bread`` configuration keys +of the ``foo`` section to ``medium``, ``prosciutto``, and ``toasted``, +respectively. As you can see there only thing that matters is the last +value that was set for each of the configuration keys. + +If a configuration key is set multiple times in different +configuration files the final value will depend on the order in which +the different configuration files are read, with settings from earlier +paths overriding later ones as described on the ``Files`` section +above. + A line of the form ``%include file`` will include ``file`` into the current configuration file. The inclusion is recursive, which means that included files can include other files. Filenames are relative to