-
Notifications
You must be signed in to change notification settings - Fork 2
Configuration
Enversion's behavior can be customized at the global level (applies to all repositories) and at the per-repository level.
To print out all of the locations Enversion will look for the global configuration file, run evnadmin show-config-file-load-order
(or evnadmin scflo
):
% evnadmin show-config-file-load-order
/Users/Trent/.evnrc
/Users/Trent/anaconda/etc/evn.conf
/Users/Trent/anaconda/evn.conf
/etc/evn.conf
/usr/local/etc/evn.conf
/opt/etc/evn.conf
/opt/local/etc/evn.conf
The first three entries are dynamic, and are driven by the following values:
$HOME/.evnrc
- Python's
sys.exec_prefix
+ "/etc" directory. - Python's
sys.exec_prefix
directory.
The remaining locations are static:
4. /etc/evn.conf
5. /usr/local/etc/evn.conf
6. /opt/etc/evn.conf
7. /opt/local/etc/evn.conf
Finally, if the EVN_CONF
environment variable is set, Enversion will also try use that, too:
% export EVN_CONF=/data/svn/evn.conf
% evnadmin show-config-file-load-order
/Users/Trent/.evnrc
/Users/Trent/anaconda/etc/evn.conf
/Users/Trent/anaconda/evn.conf
/etc/evn.conf
/usr/local/etc/evn.conf
/opt/etc/evn.conf
/opt/local/etc/evn.conf
/data/svn/evn.conf
Note the inclusion of /data/svn/evn.conf
at the end when EVN_CONF
has been set.
The configuration file loading logic is additive; an attempt is made to load each file in order, with each file's directives replacing any directives defined in previous files.
Enversion uses the standard Python ConfigParser facilities for managing configuration files.
All global configuration options live under a single section named [main]
. Lines starting with #
are treated as comments.
Thus, a sample evn.conf
may look like this:
% cat ~/.evnrc
[main]
#svnadmin-create-flags = --compatible-version 1.7
standard-layout =