Windows Git在使用SSH时提示输入密码,即使存在SSH密钥(但以管理员身份运行)。问题是什么?

Windows Git在使用SSH时提示输入密码,即使存在SSH密钥(但以管理员身份运行)。问题是什么?,windows,git,ssh,Windows,Git,Ssh,在运行Windows的公司环境中,我遇到以下问题: 通过SSH使用git git clone git@server:repo.git 系统会提示我输入密码: git clone git@server:repo.git Cloning into 'repo'... git@server's password: 虽然我的SSH密钥位于C:\Users\[USERNAME]\.SSH中,但找不到SSH密钥 但是,以管理员身份运行命令shell(CMD),一切正常 问题是什么?如何解决?(注意:我在

在运行Windows的公司环境中,我遇到以下问题:

通过SSH使用git

git clone git@server:repo.git
系统会提示我输入密码:

git clone git@server:repo.git
Cloning into 'repo'...
git@server's password:
虽然我的SSH密钥位于
C:\Users\[USERNAME]\.SSH
中,但找不到SSH密钥

但是,以管理员身份运行命令shell(CMD),一切正常

问题是什么?如何解决?

(注意:我在回答我自己的问题,因为这个问题浪费了我的时间,我在其他问题中没有看到类似的“拒绝访问”症状)

获取“拒绝访问”或未识别SSH密钥可能有多种原因,另请参阅

上面的问题——git作为本地管理员而不是用户运行时的工作方式——可能与公司环境中的特定设置有关。在我的例子中,这台机器有一个文件夹
C:\Users\[USERNAME]
,但在网络安装的驱动器上也有一个配置文件(比如N)。带有我的密钥的.ssh文件夹位于
C:\Users\[USERNAME]
中,但git正在
N:

在计算机上以(本地)管理员身份运行更改了行为并使用了
C:\Users\[USERNAME]
中的配置文件

要查找您的主文件夹,请执行以下操作:

  • 在Windows上打开Git Bash
  • 类型
    cd~;pwd
该问题最终与环境变量HOMEDRIVE、HOMESHARE或USERPROFILE的不同设置有关,另请参见