当我尝试和推动承诺高达GitHub上,我得到一个OSX SSH密钥似乎无法与git
Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights and the repository exists.
幸运的是,help.GitHub有a great article on solving SSH issues.我通过这个指南跑,发现ssh-add -l -E md5
回报The agent has no identities.
该指南says to generate a new key,我做了。之后,ssh-add
返回像预期的2048 MD5:a0:dd:42:3c:5a:9d:e4:2a:21:52:4e:78:07:6e:c8:4d /Users/you/.ssh/id_rsa (RSA)
。
太好了,我想问题已经解决了。我尝试再次推动,并获得相同的公钥问题。我确定我的密钥在GitHub中正确设置。当我开始新的会话时,ssh-add
再次返回没有身份。我甚至从头开始按照上面的文章开始了这个过程。我有checked my permissions,现在我没有排除故障线索。
很难知道发生了什么不完整的日志你的行动,价值观,他们回来了,等等。例如,如果你开始一个新的代理,你可能已经加载了钥匙插进*是*剂,而不是苹果的 - 这会解释一个不知道任何事情的新终端。 –
......所以,在MacOS上,所有运行'eval“$(ssh-agent -s)”'的指令都不适用:钥匙串已经为您提供了一个与会话中的所有内容共享的代理。 –
顺便说一句,你在代理中有一个密钥(“你的代理”是Apple Keychain,而不是你手动调用的任何东西),使用'ssh-add -L'(yes,* capital *'L')来转储公共端,并确保它与github中的完全相同 - 只是为了确保它们在两个地方都是同一个关键。 –