etckeeper − store /etc in git, mercurial, or bazaar
etckeeper command [-d directory]
etckeeper manages /etc be stored in a git, mercurial, or bazaar 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.
init |
This is the only command you typically need to run by hand. It initialises and sets up a git, mercurial, or bazaar 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 changes in /etc to the repository. A commit message can be specified.
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 DPkg::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 DPkg::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 dpkg by hand.)
unclean
This returns true if the directory contains uncommitted changes.
/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.
Joey Hess, <joey AT kitenet DOT net>.