密钥passphase请求没有运行ssh代理。

时间:2017-10-08 18:00:52

标签: git ssh

我打开Windows cmd(不是Git Bash)。转到带有.git目录的项目。我运行git push并收到:Enter passphrase for key '/c/Users/user/.ssh/id_rsa':。这意味着我已经运行了ssh代理并添加了密钥。

但是当我运行ssh-add -l时,我得到Could not open a connection to your authentication agent.,告诉我我没有代理人在运行。

如果没有运行ssh代理,如何运行git push?或者它是否立即启动git push命令?

1 个答案:

答案 0 :(得分:1)

此提示表示:

  1. 您的密钥受密码保护
  2. SSH可以在默认路径中找到它,但它未在代理中加载(如果有的话)
  3. 不需要在要使用的代理中加载密钥。看起来这是你的情况。 SSH在Windows上查看$HOME/.ssh%USERPROFILE%\.ssh。您可以运行ssh -vvv <URL>来跟踪跟踪。

    要确保已加载密钥,请使用ssh-add -L。这将列出您已加载的密钥,或者如果找不到代理,则显示错误消息。要在会话期间加载密钥(非持久性),请使用ssh-agent bash,然后ssh-add