Git in here you little rascals

by kengilmer

I seem to have ascended to that (low) level of Git aptitude that makes me want to stick any old thing into a git repository.  Namely, the “dotfiles” or things that live in my home directory that tend to follow me around from machine to machine.  There are various established ways of doing this, including symlinks and scripts.  Due to Git not permitting the cloning of a repo into a non-empty directory, the process becomes more complex that it should be.  After an hour of bungling, my approach has become:

1) My central repo is not public (aka github).  So, I don’t need to worry about stray personal info being accentially dangled in front of the world.

2) No scripts or symlinks, the home dir is the repo.

My process:

1) On the new machine/account, get my ssh keys on there stat.

2) git clone <secret git repo>/homedir && cp -r homedir/* . && cp -r homedir/.* .

3) rm -Rf homedir

4) log out/back in for freshness

Poof, that’s all.  Then, when inspiration strikes and I update one of my little treasures, the ol’ git push ‘n pull gets all my accounts synced up.