reposettings is an extension for Mercurial that allows configuration of ui and web stanzas for individual repositories from one config.
[reposettings] base = /srv/hg [ui path/to/repo] contact = John Doe <firstname.lastname@example.org> description = Widget factory [web path/to/repo path/to/another/repo] allow_read = joe, jane
The path specified will match any repositories at or below that directory. Paths are parsed with a Unix shell-like syntax (using shlex), allowing escaped characters and quoted values.
Sections marked with "(global)" will have their settings added to repository-specific sections. So for example, given the following:
[web] allow_read = admin [web (global)] allow_push = admin [web path/to/repo] allow_read = jack allow_push = jack
The effective settings become:
[web path/to/repo] allow_read = jack allow_push = admin, jack
- This extension requires Mercurial 1.1 or newer.
- This extension doesn't use hgwebdir's configuration file. If you're trying to apply settings to an hgwebdir instance, set HOME in the runner script and put your settings in $HOME/.hgrc.