我在Windows上使用Git,一周前我设置了SSH密钥。我克隆了我的回购,工作得很好。
然后,今天我尝试了拉动,这种情况发生了:
$ git pull
Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
我尝试运行ssh-add-l
并返回此信息:
$ ssh-add -l
The agent has no identities.
但是我的密钥文件在同一个地方。我不久前在Mac上遇到了这个问题,但后来我只做了另一个密钥而且工作正常。如果不生成另一个SSH密钥,我该怎么办?
答案 0 :(得分:5)
ssh-agent
在重新启动时不会持续存在。您需要启动代理(相当于Linux eval $(ssh-agent)
),然后您需要在重新启动后手动添加它们或设置一些脚本以自动加载它们。
如果您的密钥位于“默认位置”,例如~/.ssh/id_rsa
,则运行ssh-add
就足够了,否则您需要运行ssh-add path/to/your/private/key
。