The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

SVK::Help::Environment - A list of svk's environment variables

DESCRIPTION

A number of system environment variables influence how svk runs. Below is a complete list of variables you can use to alter svk's behavior.

All Platforms

$SVKROOT

Unless you tell it otherwise, svk stores your configuration and repository in $HOME/.svk. If you set SVKROOT to a path on disk, svk will look there instead of in $HOME/.svk.

$SVN_EDITOR / $EDITOR

Sometimes, svk needs to pop up a text editor. svk first tries to launch the editor specified in $SVN_EDITOR and falls back to $EDITOR if that's not defined.

$SVKDIFF

If you'd prefer to use an external "diff" tool instead of svk's builtin diff library, set this variable to your tool's name or path.

$SVKMERGE

svk lets you resolve conflicts, interactively, with a text editor or use an external diff tool. Out of the box, svk comes with support for the following merge tools:

 AraxisMerge
 Emacs
 FileMerge
 GtkDiff
 Guiffy
 GVim
 KDiff3
 Meld
 P4WinMerge
 TkDiff
 TortoiseMerge
 Vim
 WinMerge
 XXDiff

If you want svk to spawn a specific merge tool, set this variable to the tool's name.

$SVKLOGLEVEL

The lowest log level that svk will present to the user. The log levels are: DEBUG, INFO, WARN, ERROR and FATAL. The default log level is INFO; this includes progress messages for long-running commands (such as sync). For non-interactive use (such as for cron jobs) it might be useful to set $SVKLOGLEVEL to WARN.

$SVKRESOLVE

If you set this variable, svk's interactive resolver will always perform the command it's set to. For more details about the commands available in svk's interactive resolver, type perldoc SVK::Resolve.

$SVKMIME

Indicates which module is used for automatically detecting the MIME types of files. Implementations included with core SVK are: "File::LibMagic", "File::MMagic", "File::Type" and "Internal". The value "Internal" means to use SVK's own internal MIME detection algorithm which requires no external modules. This poor, but fast algorithm simply assigns "application/octet-stream" to anything that looks binary. If $SVKMIME has no value, "Internal" is used.

$SVKPAGER

When svk needs to pipe long output through a pager, it uses $SVKPAGER to send the output to your display. If this variable is not set or set to something that's not executable, the output will not be paged. svk ignores your $PAGER setting, so you must explicitly set $SVKPAGER if you want paging.

$SVKLOGOUTPUT

By specifying this variable, you change the default output filter used by the svk log command. The value of this variable can be anything that you can pass to svk log's --output option.

SVKBATCHMODE

When you set this variable to a true value, SVK should never prompt the user for an interactive response.

$SVNFSTYPE

By default, svk creates its local repository as a fsfs repository when running on Subversion 1.1 and newer. On Subversion 1.0, SVK defaults to bdb. To explicitly specify a repository type, set this variable to fsfs or bdb.

$SVKNORAREPLAY

By default, svk tries to make use of the replay api provided by Subversion if available. You can turn this environment variable on to tell svk not to do so. svk will then use the old SVN::Mirror module to do mirroring.

$SVKSVNBACKTRACE

(For debugging use only.) If this environment variable is set to a true value, any error message which comes from the Subversion libraries will be accompanied by a stack backtrace.

$SVKPGP

svk supports the verification of historical changesets using the Gnu Privacy Guard. Note that SVK no longer allows users to sign new changesets. By default, svk tries to run the first program called gpg in your path. To tell svk to use a specific gpg executable, set this variable to the executable's name or path.

Win32

These variables only apply to svk on Windows.

$ProgramFiles

Set this variable to the directory you install programs into. It defaults to 'C:\Program Files'.