(Update 2012-03-02: see Eli’s other method in the comments)
You would think that after using Unix for this long (over 20 years), I would have finally kept my ‘dotfiles’ in order. Not so. I just kept copying or re-writing them as I moved from machine to machine.
No more. After seeing people on github demonstrating how to get their dotfiles house in order, it seemed like the right time. This was an easier choice now than ever before because git has become as prevalent as ‘ls’. It is so fast and flexible. So I took the plunge.
I took a look at a bunch of blogs about this (probably more than I needed to). The two I seriously looked at are here: the ‘ryanb’ dotfiles technique and the ‘rtomayko’ dotfiles. Both were simple. Other people on the net had these extra tools built to handle the problem. Others kept their entire home dir in version control… as in all their music and photos! I respect their work, but this puts quite a bit of stress on the rcs system.
I used the ‘ryanb’ approach. Essentially, you do a git pull on a new machine, run a ‘rake install’ so the files properly setup symlinks. Done.
I used it today and I was pleased to have all my aliases and editor tweaks working on my new machine. I will never go back.