Skip to content
Trent Nelson edited this page Aug 4, 2014 · 1 revision

Enversion's behavior can be customized at the global level (applies to all repositories) and at the per-repository level.

Global Configuration

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:

  1. $HOME/.evnrc
  2. Python's sys.exec_prefix + "/etc" directory.
  3. 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.

Configuration File Format

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 =

Options Reference

admins

[main]: admins