我在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.
Run Code Online (Sandbox Code Playgroud)
我试图运行ssh-add-l并返回此:
$ ssh-add -l
The agent has no identities.
Run Code Online (Sandbox Code Playgroud)
但是我的密钥文件在同一个地方.我不久前在Mac上遇到了这个问题,但后来我只做了另一个密钥而且工作正常.如果不生成另一个SSH密钥,我该怎么办?
ssh-agent在重新启动时并不持久.您需要启动代理(相当于Linux eval $(ssh-agent)),然后您需要在重新启动后手动添加它们或设置一些脚本以自动加载它们.
如果您的密钥位于"默认位置",例如~/.ssh/id_rsa,它应该足以运行ssh-add,否则您需要运行ssh-add path/to/your/private/key.