an easy way to maintain your personal settings across multiple machines
Quite some time ago, I realized that its sometimes quite hard to distribute your personal settings across multiple machines. That time, I mostly used rsync to sync my personal settings onto the different machines I had a login on. Some time later I switched from using rsync to creating a Debian package out of my personal settings. But this soon showed not to be quite nice, because it didn't work on machines where I didn't have root or machines which were not running Debian. So I again switched to tla, which had its ups and downs, but mostly it had several bugs and annoying behaviours. So finally I'm using git right now, and its really one of the nicest revision control systems I've been using so far.
So one might ask: What's the main purpose of this configurations archive, and what is it good for? Well, it ought to provide quite usable settings for several programs, like zsh, vim and many more. The settings are tested across several unices (Linux, NetBSD, Solaris, to only name a few) and are written in a modular and understandable fashion.
To allow you to modify them on your own, it is best when you create your own personal branch with your local modifications (setting the EMAIL environment variable for example). This allows you to have your own preferences and still get updates (like newer zsh completion files) from the master configurations archive.
Please refer to the git website and documentation on how do do this.
You can clone the master archive with the following command: (if you can only use http, simply replace git: by http:)
git clone git://www.dreamind.de/scm/configurations