我安装了Cygwin和TortoiseGit。我通过ssh-key-gen -t rsa
创建了ssh-key并将公钥注册到我的GitHub页面。但是,在gitbash
终端中,它工作正常,Cygwin
终端失败。
// Cygwin
$ 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.
我注意到他们使用不同的git。那么,我如何在Cygwin中指定git路径?我的操作系统是Windows 10。
// Cygwin
$ where git
C:\Program Files\Git\cmd\git.exe
$ which git
/cygdrive/c/Program Files/Git/cmd/git
// gitbash (MINGW64)
$ where git
C:\Program Files\Git\mingw64\bin\git.exe
C:\Program Files\Git\cmd\git.exe
$ which git
/mingw64/bin/git
答案 0 :(得分:2)
git路径本身对ssh并不重要。
重要的是$HOME
,因为git(任何git)会在$HOME/.ssh
仔细检查两种方案中的echo $HOME
输出,并检查ssh -Tv auser@aserver
的结果(在键入git remote -v
时看到的ssh网址的开头替换用户和服务器)
此外,Cygwin has its own Git package as I explain here。
并it needs a .bash_profile
as a setting。