Etckeeper

From the etckeeper website:
 * etckeeper is a collection of tools to let  be stored in a git, mercurial, bazaar or darcs repository. This lets you use git to review or revert changes that were made to  . Or even push the repository elsewhere for backups or cherry-picking configuration changes.

It hooks into package managers like apt to automatically commit changes made to  during package upgrades. It tracks file metadata that git does not normally support, but that is important for, such as the permissions of.

It's quite modular and configurable, while also being simple to use if you understand the basics of working with version control.

USE flags
(Optional section. Remove if not applicable.)

Emerge
Install

Additional software
etckeeper supports the following VCS:

Configuration
(Explain how to configure the package/software/tool/utility in this section.)

Environment variables

 * VAR1
 * VAR2

Files
The main configuration file is

Service
(Provide instructions on starting/stopping and enabling/disabling the software's service. This is only really necessary if it if the software includes a daemon for certain tasks.)

Usage
(Explain how to use the package/software/tool/utility in this section.)

Troubleshooting
(Troubleshoot issues in this section. Separate issues by best describing the error with a new section name. Remove if no issues are known.)

External resources

 * (Link to external resources (outside the Wiki) using bullet points in this section. It is common for the information in this section to full sentences that are links.)