曾经与 Github 一起使用的 ssh 密钥停止工作,我做什么都无法修复它。所有 Git 请求都将因标准而消失git: fatal: Could not read from remote repository
在 github 上,我是一个组织的一部分,那里有几个 repos。我目视检查或测试了我的...
- 我的 GitHub 帐户下的 SSH 和 GPG 密钥
~/.ssh/config
我的档案里没有添加任何恶意内容- 确保
eval $(ssh-agent)
运行,并且 - 我的钥匙已包含在内
ssh-add ~/.ssh/for_github
ssh -T [email protected]
它说连接成功!
怎么回事?不过很好奇,为什么会这样说welcome org_name/other_project
?
user$ ssh -T [email protected]
Hi org_name/other_project! You've successfully authenticated, but GitHub does not provide shell access.
答案1
所有论坛都说输出将是,为什么我的输出是一个存储库的名称,特别是因为我甚至没有在那个存储库中工作,而不是我自己的用户名?ssh -T [email protected]
welcome <username>
user$ ssh -T [email protected]
Hi org_name/other_project! You've successfully authenticated, but GitHub does not provide shell access.
在我四处寻找的过程中,我发现 SSH 密钥的存储位置不同 - 用户的 SSH 密钥和存储库中的部署密钥。我仔细查看了这两个位置,发现我输入了长期使用的 SSH 密钥作为部署密钥。由于无知,我不知何故把这两个密钥弄错了。我记得没有警告。
快速删除重复的部署密钥后,我又可以继续工作了。我的服务器git push
又可以工作了,ssh github 测试现在有了我的用户名。
user$ ssh -T [email protected]
Hi my_username! You've successfully authenticated, but GitHub does not provide shell access.
TL:DR --- 不要使用相同的 ssh 密钥进行用户身份验证和项目部署