git clone时出现Permission denied (p

2016-12-23  本文已影响7433人  狂风无迹

总结一下,出现这个问题原因是clone的时候需要使用一个公钥和本地的私钥来做身份认证。

1、首先确认自己有没有git帐号

2、有的话,生成一对公私钥对,公钥上传到github,私钥需要添加到本地的私钥列表

具体步骤如下所示:

用 git clone 时出现错误:

Permission denied (publickey).

上网搜了一下, 原因是'You've probably not added a public key to your SSH keys.'

解决方法如下:

用下面的命令生成public key

$ ssh-keygen -t rsa

复制 public key (id_rsa.pub) 到你账户的list of SSH keys, 再重新运行clone命令

如果还不行,执行下面的分析步骤:

1、首先尝试重新添加以前生成的key,添加多次,仍然不起作用。

2、使用命令 ssh -v git@github.com测试,最后几行结果如下:

debug1: Authentications that can continue: publickey

debug1: Next authentication method: publickey

debug1: Trying private key: /home/gr/.ssh/id_rsa

debug1: Trying private key: /home/gr/.ssh/id_dsa

debug1: Trying private key: /home/gr/.ssh/id_ecdsa

debug1: No more authentication methods to try.

Permission denied (publickey).

3、分析:尝试了3个private key,但都没有成功,最后是导致Permission denied.

4、查看我的密钥, ls ~/.ssh/ :

bajie  bajie.pub  known_hosts

5、发现我的id_rsa文件我命令为bajie, 所以根本没有使用它。同时可以使用如下命令查看密钥列表:

ssh-add -l

6、上面命令的密钥列表为空,所以要添加我的密钥,使用命令:

gr@grpc:~/workspace/git/home$ ssh-add ~/.ssh/bajie

Enter passphrase for /home/gr/.ssh/bajie:

Identity added: /home/gr/.ssh/bajie (/home/gr/.ssh/bajie)

7、再次查看,如下,添加成功:

gr@grpc:~/workspace/git/home$ ssh-add -l

2048 63:c5:d8:6c:a0:0c:a8:9c:26:d8:f8:95:de:29:04:eb /home/gr/.ssh/bajie (RSA)

8、再使用ssh -v git@github.com测试连接,可以看到验证通过:

debug1: Authentications that can continue: publickey

debug1: Next authentication method: publickey

debug1:Offering RSA public key: /home/gr/.ssh/bajie

debug1: Server accepts key: pkalg ssh-rsa blen 279

debug1:Authentication succeeded (publickey).

Authenticated to github.com ([192.30.252.129]:22).

9、最后git clone项目成功。

上一篇下一篇

猜你喜欢

热点阅读