我的 Mac 上有 2 个 git 帐户,我有 2 组公钥和私钥。
我在 /.ssh 中有一个配置文件来管理这些帐户,如下所示:
Host github.com
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa
Host github-user2
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa_user2
来自这些帐户的代码将被推送到 2 个不同的远程存储库,我使用以下命令在它们各自的目录中设置它们的不同远程:
git remote add origin github.com:xyz_user/abc.git
git remote add origin github-user2:pqr_user/def.git
我能够成功地从两个帐户推送到这些回购。
当我使用 ssh 时,
ssh-add -l
显示添加的两个帐户的私钥。
但
ssh -T github.com
ssh -T github-user2
两者都给出以下消息:
"Hi user2! You've successfully authenticated, but GitHub does not provide shell access."
我注意到的另外 1 件事,即使没有用“ssh-add -l”列出的密钥
ssh -T github.com & ssh -T github-user2 provide successful authenticate message.
建立 ssh 连接时如何区分两个帐户?
ssh -T 从哪里进行身份验证?