所以我花了大约4个小时试图在Windows上使用SSH URL进行回购,我几乎就在那里,但我遇到了这个奇怪的问题。
我可以使用
git push origin master
git fetch origin master
ssh git@github. #tells me authentication is successful but shell access is not allowed
和所有本地命令。但是,当我尝试做git pull时,我得到:
-bash-4.1$ 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.
-bash-4.1$
我id_rsa
下有id_rsa.pub
和%HOME%/.ssh
,公钥已添加到我的GitHub帐户中。我的git网址也是正确的。
修改
-bash-4.1$ git --version
git version 1.8.5.2.msysgit.0
答案 0 :(得分:2)
问题可能仍然存在,因为git
和cygwin
有不同的.ssh
目录。
执行ssh git@github
后,它会使用.ssh
的{{1}}文件夹中指定的文件,但是当您执行cygwin
时,它会使用git pull
中的id_rsa
git bash's .ssh
文件夹。
查看我的问题=> ssh clone not cloning repo in git
答案 1 :(得分:2)
以下是我解决问题的方法:
在config
cygwin64/home/<username>/.ssh
的文件
向其添加行IdentityFile <path to your private key>
答案 2 :(得分:1)
你是否可能从另一个地方拉?
尝试:
git pull origin master