How to setup multiple ssh identities for single hg repository?

前端 未结 2 1933
北恋
北恋 2021-02-10 02:54

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

相关标签:
2条回答
  • 2021-02-10 03:05

    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.

    0 讨论(0)
  • 2021-02-10 03:16

    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.

    0 讨论(0)
提交回复
热议问题