When you use more than one SSH key to access GitHub you can use primary account by default and additional, with such a config
(assume your second SSH key file is ~/.ssh/id_rsa_pewpew
)
Host github-pewpew
HostName github.com
IdentityFile ~/.ssh/id_rsa_pewpew
With Linux having ssh key in .ssh
folder and configuring ~/.ssh/config
is enough.
But on MacOS I get an error during Git clone (and Capistrano deploy) like this:
git clone git@github-pewpew:.../...git
Cloning into 'MyRepo'...
ERROR: Repository not found.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights and the repository exists.
a bit confusing, but an error is not with Repo by itself (if you are completely sure that you are the repo owner or have write-rights).
Solution
On MacOS X I need to additional keys manually by
$ ssh-add ~/.ssh/id_rsa_pewpew
and you can check what key are in use right now
$ ssh-add -l
Note
On MacOS X you will need to add key after every system restart.
It looks like we need to use OSX Keychain to reload them authomatically via
$ ssh-add -K [path/to/private SSH key]