我在使用ssh克隆git存储库时遇到了一个奇怪的问题。我有ssh设置:
ssh -T git@github.com
Hi yusufali2205! You've successfully authenticated, but GitHub does not provide shell access.
我正在使用正确的克隆网址,并且可以访问我想要克隆的repo。但是得到错误:
➤ git clone git@github.com:<some-org>/<repo>.git
Cloning into 'project'...
Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
没有其他消息来调试我的ssh设置或git配置有什么问题。
答案 0 :(得分:3)
我发现我的.gitconfig
中有一个条目正在用https替换ssh。
[url "https"]
insteadOf = git
我可能在使用某些工具时意外添加了此条目。因此,clone命令实际上是使用url https@github.com:<some-org>/<repo>.git
从.gitconfig
删除上述条目后问题得以解决。
答案 1 :(得分:0)
就我而言,我必须删除〜/ .ssh / known_hosts文件,以便在克隆时会重新制作该文件。在此之后,它起作用了
答案 2 :(得分:0)
我遇到了同样的问题,经过研究我尝试了一些东西,然后我明白了。转到您的.ssh目录,用记事本打开文件“ known_hosts”,在文件的开头即为“ github.com” ...在github.com的开头插入SSH:如下所示:“ SSH:github .com”并保存,然后重试。它对我有用!