Use várias chaves SSH de implantação com GitHub

O GitHub permite anexar uma chave de implantação a apenas um repositório. O problema é quando você deseja acessar vários repositórios com ferramentas como capistrano ou, como é o nosso caso, webistrano que executa git ls-remotelocalmente antes de fazer o ssh’ing para um servidor remoto e fazer clone git lá.

Aqui está o truque para fazer com que a ferramenta sempre use a chave correta.

Alias ​​host github.com em seu ~/.ssh/confige atribua uma chave de identidade a ele.

Host aliased-github
HostName github.com
IdentityFile ~/.ssh/my_deploy_key

Agora a ferramenta deve ser configurada para implantar a partir de git@aliased-github:username/repository.git