Shameless plug for a tool I developed in order to easily switch git identities based on projects: https://github.com/cquintana92/git-switch-user After configuring the identities you just need to run $ git su Personal $ git su Work And all the identity configuration (email, name, SSH key and optionally PGP key) will be set up into the repo's .git/config file. Saved me a ton of time.
https://github.com/dolmen/github-keygen
12 years old, but still actively maintained.