etckeeper(8)

ETCKEEPER(8) ETCKEEPER(8)

NAME

etckeeper - store /etc in git, mercurial, bazaar, or darcs

SYNOPSIS

etckeeper command [-d directory]

DESCRIPTION

etckeeper manages /etc be stored in a git, mercurial, bazaar, or darcs repository. By default each of the commands operates on /etc, but a different directory can be specified to operate on a clone of the /etc repository located elsewhere.

COMMANDS

init
This initialises and sets up a git, mercurial, bazaar, or darcs repository (depending on the VCS setting in /etc/etckeeper/etckeeper.conf). Typically this is run in /etc once when starting to use etckeeper on a machine. It can also be used to initialise a clone of the /etc repository located elsewhere.
commit [message]
Commits all changes in /etc to the repository. A commit message can be specified. You may also use the underlying VCS to commit manually. (Note that etckeeper commit will notice if a user has used sudo or su to become root, and record the original username in the commit.)
pre-commit
This is called as a pre-commit hook. It stores metadata and does sanity checks.
pre-install
This is called by apt's RPM::Pre-Install-Pkgs hook, or by equivilant hooks of other package managers. It allows committing any uncommitted changes before packages are installed, upgraded, etc.
post-install
This is called by apt's RPM::Post-Invoke hook, or by equivilant hooks of other package managers. It commits changes made by packages into the repository. (You can also call this by hand after running apt/rpm by hand.)
unclean
This returns true if the directory contains uncommitted changes.
update-ignore [-a]
This updates the VCS ignore file. Content outside a "managed by etckeeper" block is not touched. This is generally run when upgrading to a new version of etckeeper. (The -a switch will add a "managed by etckeeper" block if one is not present.)
vcs subcommand [options ...]
You can use this to run any subcommand of the VCS that etckeeper is configured to run. It will be run in /etc. For example, "etckeeper vcs diff" will run "git diff", etc.
uninit [-f]
This command DESTROYS DATA! It is the inverse of the init command, removing VCS information and etckeeper's own bookkeeping information from the directory. Use with caution. A typical use case would be to run etckeeper uninit, then modify etckeeper.conf to use a different VCS, and then run etckeeper init. (The -f switch can be used to force uninit without prompting.)

FILES

/etc/etckeeper/etckeeper.conf is the configuration file.

/etc/etckeeper also contains directories containing the programs that are run for each of the above commands.

ENVIRONMENT VARIABLES

ETCKEEPER_CONF_DIR path to configuration directory instead of default /etc/etckeeper.

SEE ALSO

/usr/share/doc/etckeeper/README.md.gz

AUTHOR

Joey Hess <id@joeyh.name>