-
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_prefixdirectory.
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 =