GitBash类似于Cygwin,使用传统的Linux权限。
我建议您通过在GitBash中运行以下命令来确保您的ssh目录存在于正确的位置并具有正确的权限:
mkdir ~/.ssh
chown $USER:$USER -R ~/.ssh
然后运行stat ~/.ssh
,以查看权限是否已正确更改。
ls ~/.ssh
要确保你的密钥已正确安装在正确的位置,请查看。
您可以通过运行echo ~
或echo $HOME
来查看实际注册为您主目录的目录。
您可以通过修改~/.bashrc
并添加一行export HOME=/some/directory
来更改您的Linux HOME。
您可以通过键入命令mount
来查看GitBash文件系统与Windows文件系统的对应关系。
MINGW64 /c $ mount
C:/Program Files/Git on / type ntfs (binary,noacl,auto)
C:/Program Files/Git/usr/bin on /bin type ntfs (binary,noacl,auto)
C:/Users/MyUser/AppData/Local/Temp on /tmp type ntfs (binary,noacl,posix=0,usertemp)
C: on /c type ntfs (binary,noacl,posix=0,user,noumount,auto)
D: on /d type ntfs (binary,noacl,posix=0,user,noumount,auto)
如果其他方法都不起作用,您也可以尝试修改Windows中的
%HOME%
环境变量,以确保它指向正确的路径。但是,您添加到
~/.bashrc
的Linux变量将覆盖任何Windows环境变量。
c:\Program Files\Git\home\ <<===>> c:\Users
。 - sigodmkdir /home/sigod/.ssh
可能会有帮助。 - KCD/home/sigod
不存在(或不是目录),但您的环境中某些内容告诉git那是您的主目录。即使在Linux下,用户sigod
的主目录也不一定是/home/sigod
;用户的主目录是由/etc/passwd
中的条目设置的,该条目用于设置$HOME
环境变量,这是git查看的内容。它在Windows下可能工作方式有所不同。也许一个Windows专家可以帮忙解决。 - Keith Thompson