# HG changeset patch # User Thomas Arendsen Hein # Date 1124397336 -3600 # Node ID 859de3ebc041d275d38444f6aa5f0b71ae8adf50 # Parent fbaf0380efd1097b3e6d7f02f69d8ad483d1b5d6 Read global config file /etc/mercurial/hgrc and fix reading hgrc on Windows. diff -r fbaf0380efd1 -r 859de3ebc041 doc/hg.1.txt --- a/doc/hg.1.txt Thu Aug 18 13:55:45 2005 +0100 +++ b/doc/hg.1.txt Thu Aug 18 21:35:36 2005 +0100 @@ -273,9 +273,8 @@ Show definition of symbolic path name NAME. If no name is given, show definition of available names. - Path names are defined in the [paths] section of the $HOME/.hgrc and - /.hg/hgrc configuration files. If run outside a repo, 'paths' - queries only $HOME/.hgrc. + Path names are defined in the [paths] section of /etc/mercurial/hgrc + and $HOME/.hgrc. If run inside a repository, .hg/hgrc is used, too. pull :: Pull changes from a remote repository to a local one. @@ -589,10 +588,11 @@ seperated by spaces) that correspond to tagged versions of the repository contents. - $HOME/.hgrc, .hg/hgrc:: + /etc/mercurial/hgrc, $HOME/.hgrc, .hg/hgrc:: This file contains defaults and configuration. Values in .hg/hgrc - override those in .hgrc. See hgrc(5) for details of the contents - and format of these files. + override those in $HOME/.hgrc, and these override settings made in the + global /etc/mercurial/hgrc configuration. See hgrc(5) for details of + the contents and format of these files. BUGS ---- diff -r fbaf0380efd1 -r 859de3ebc041 doc/hgrc.5.txt --- a/doc/hgrc.5.txt Thu Aug 18 13:55:45 2005 +0100 +++ b/doc/hgrc.5.txt Thu Aug 18 21:35:36 2005 +0100 @@ -15,17 +15,22 @@ FILES ----- -Mercurial reads configuration data from two files: +Mercurial reads configuration data from three files: + +/etc/mercurial/hgrc:: + Options in this global configuration file apply to all Mercurial + commands executed by any user in any directory. $HOME/.hgrc:: - Global configuration options that apply to all Mercurial commands, - no matter where they are run. + Per-user configuration options that apply to all Mercurial commands, + no matter from which directory they are run. Values in this file + override global settings. /.hg/hgrc:: Per-repository configuration options that only apply in a particular repository. This file is not version-controlled, and will not get transferred during a "clone" operation. Values in - this file override global values. + this file override global and per-user settings. SYNTAX ------ diff -r fbaf0380efd1 -r 859de3ebc041 mercurial/ui.py --- a/mercurial/ui.py Thu Aug 18 13:55:45 2005 +0100 +++ b/mercurial/ui.py Thu Aug 18 21:35:36 2005 +0100 @@ -13,7 +13,8 @@ def __init__(self, verbose=False, debug=False, quiet=False, interactive=True): self.cdata = ConfigParser.SafeConfigParser() - self.cdata.read(os.path.expanduser("~/.hgrc")) + self.cdata.read([os.path.normpath(hgrc) for hgrc in + "/etc/mercurial/hgrc", os.path.expanduser("~/.hgrc")]) self.quiet = self.configbool("ui", "quiet") self.verbose = self.configbool("ui", "verbose")