Motivation and Core Idea
Previously, I had my dotfiles separated into categories, with public and private branches, and symlinked them from
$HOME. That approach certainly had some elegance, but, as old Einstein said, we should make things as simple as possible (but not simpler!).
Now, my home directory simply is the Git repository. No layers, no unnecessary complexity.
Create an empty Git repository in your home directory and add this repository as a remote:
cd git init git remote add origin email@example.com:blinry/dotfiles.git
If you don't have a GitHub account and SSH keys set up, use this URL instead:
git remote add origin git://github.com/blinry/dotfiles.git
Now fetch from the remote and check it out, yo.
git fetch git checkout -b master origin/master
If you get errors about untracked files that would get overwritten, move them to a backup directory and try again. You can merge them later.
Execute the almighty setup script. It will set up the Vim bundles and install my favourite packages if you're running Arch Linux (pacman and yaourt are available).
Set the variables in
.userto your liking
Relogin! You're done.