如何管理在GIT中的两个不同私有存储库上使用的多个ssh密钥

时间:2016-03-24 21:49:29

标签: git

我在git上有两个私有存储库,我在'Deploy keys'部分添加了每个存储库的密钥,但现在我遇到了麻烦Git在我的机器上识别我的kyes。我有两个公共/两个存储库的私有对密钥... id_rsa.pub,id_rsa和id_rsa2.pub,id_rsa2。

从一个项目它运作良好,而从另一个项目它不工作推或拉,它甚至不识别我的密码,似乎从我Git使用的任何项目总是id_rsa.pub文件。

为了说清楚我的问题是,如何根据项目指定要配置的键,例如,如果我在Project'X'中使用id_rsa.pub,而如果我在'Y'项目中使用id.rsa2。酒馆

任何解决方案?

1 个答案:

答案 0 :(得分:1)

如果这些存储库不在github上,请相应调整......

我在〜/ .ssh / config

中有这个
Host github-as-id1
  HostName github.com
  User git
  IdentityFile /home/me/.ssh/_id_rsa
  IdentitiesOnly yes
Host github-as-id2
  HostName github.com
  User git
  IdentityFile /home/me/.ssh/id_rsa2
  IdentitiesOnly yes

然后在我的项目中我的.git / config

[remote "origin"]
  url = ssh://git@github-as-id1/user/project.git
  fetch = +refs/heads/*:refs/remotes/origin/*

用户名有两次。我想你可以摆脱.git / config中的“git @”或者来自.ssh / config

User git