I am using ssh publickey authentication for my mercurial repository. So I have:
[ui]
ssh = ssh -i ~/.ssh/id_rsa -C
in my .hgrc. This works f
You do it using ssh's own tool: ssh-agent.
$ eval $(ssh-agent)
$ ssh-add ~/.ssh/id_rsa
$ ssh-add ~/.ssh/otherid_rsa
Then you don't need ssh identify related anything in your .hgrc
's [ui]
section at all.
Alternately you could do:
[ui]
ssh = ssh -i ~/.ssh/id_rsa -i ~/.ssh/otherid_rsa -C
but ssh-agent is useful in so many way's it's worth putting it your login scripts and calling it a day.
In your ~/.ssh/config
, add
Host someserver.com
IdentityFile ~/.ssh/id_rsa
Host otherserver.com
IdentityFile ~/.ssh/otherid_rsa
and anybody (including hg
and interactive use) using ssh
to connect to hosts someserver.com
or otherserver.com
will use the specified identity files.
See ssh_config for other options.