我与两个不同的git存储库交互,它们都是GitLab实现。
因为我需要使用不同的用户(和电子邮件)来访问他们,所以我创建了两个ssh键:比方说id_rsa_1和id_rsa_2。之后,我编写了一个~/.ssh/config文件来指定何时使用每个id_rsa文件。配置文件是:
Host gitlab.host1.com-user1
HostName gitlab.host1.com
User user1
IdentityFile ~/.ssh/id_rsa_1
Host gitlab.host2.com-user2
HostName gitlab.host2.com
User user2
IdentityFile ~/.ssh/id_rsa_2我的问题是每次我使用git时,都没有考虑到config文件。它总是在寻找id_rsa文件。
我的配置文件有什么问题?Host只是个人标识符,还是在git搜索密钥时考虑到了?
我应该提供哪个用户?"git“还是我在每台服务器上注册的真正用户?
我的config文件到底有什么问题?先谢谢你。
发布于 2015-06-05 22:14:32
Host条目是一种模式,它与您在查找键时请求的主机相匹配。然后,HostName是实际登录的主机,默认为Host的值。所以,你可以说:
Host gitlab.host1.com
User user1
IdentityFile ~/.ssh/id_rsa_1您还可以在调用git时指定gitlab.host1.com-user1作为主机,并且它应该与当前配置一起工作。
有关更多信息,您可以查看man ssh_config。
https://stackoverflow.com/questions/30676524
复制相似问题