Seems like we are on a bit of a roll with regard to the topic of versioning lately. Yesterday Legooolas commented about using version control for your home directory. I do and I’ll cover that in a different post but I use it for a different task. Now on to todays topic.

Do you keep track of configuration changes? You should. Maybe your using an advanced configuration management system like puppet. Even if you are you should keep your puppet configs versioned.

At any rate etckeeper is a great tool to version your configuration files stored in /etc. etckeeper hooks into your package manager and updates the repo each time changes are detected.

Its super easy to setup. In a debian based system just install via apt.

sudo aptitude install etckeeper

Once etckeeper is installed you need to initialize the git repository and do the initial check in.

sudo etckeeper init
sudo etckeeper commit