Re: Use different ssh keys for different github repos (per-url sshCommand)
On Thu, Jul 19, 2018 at 03:24:54PM +0300, Basin Ilya wrote:
Show 13 quoted lines
> I have two github accounts, one is for my organization and I want git
> to automatically choose the correct ssh `IdentityFile` based on the
> clone URL:
>
> git@github.com:other/publicrepo.git
> ~/.ssh/id_rsa
> git@github.com:theorganization/privaterepo.git
> ~/.ssh/id_rsa.theorganization
>
> Unfortunately, both URLs have same host name, therefore I can't
> configure this in the ssh client config. I could create a host alias
> there, but sometimes somebody else gives me the github URL and I want
> it to work out of the box.
I think you can hack around this using Git's URL rewriting.
For example, try this:
git config --global \
url.gh-other:other/.insteadOf \
git@github.com:other/ git config --global \
url.gh-org:theorganization.insteadOf \
git@github.com:theorganization/And then:
git clone git@github.com:other/publicrepo.git
will hit gh-other, which you can configure using an ssh host alias.
-Peff