从github上clone项目时,遇到git@github.com:Permission denied

(1) 检查SSH key是否已经存在

用这个命令 ls ~/.ssh/ 进行检查 id_rsa.pub 是否存在,如果存在,就不用生成一个新的SSH key了,直接跳到下面的第3步。

(2)如果第1步中的SSH key不存在,生成一个新的SSH key

命令如下:

ssh-keygen -t rsa -b 2048 -C “youremail@example.com” 其中,youremail@example.com要修改成你的邮箱地址。 回车后输出如下: Generating public/private rsa key pair. Enter file in which to save the key (/home/xxx/.ssh/idrsa): 其中,xxx是你的用户名,直接回车,会将key保存到默认文件中。 接着会输出: Enter passphrase (empty for no passphrase): Enter same passphrase again: 这两步是让你输入一个密码,以及确认密码,这个密码在你提交代码到Github时会用到【注意:记住这个密码,最简单的方式就是设置的和github账户登入密码一样,容易记住】 回车后就提示成功了: Your identification has been saved in /home/xxx/.ssh/idrsa. Your public key has been saved in /home/xxx/.ssh/idrsa.pub. The key fingerprint is: 01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db youremail@example.com 到这一步,你会发现 ~/.ssh/id_rsa.pub 文件已经生成了。

(3)将SSH key添加到ssh-agent

先确认ssh-agent处于启用状态: eval “$(ssh-agent -s)”

输出类似于:

Agent pid 32070

执行ssh-add时出现Could not open a connection to your authentication agent若执行ssh-add /path/to/xxx.pem是出现这个错误:Could not open a connection to your authentication agent,则先执行如下命令即可:

ssh-agent bash

然后将SSH key添加到ssh-agent:

ssh-add ~/.ssh/id_rsa

这时又会要你输入密码:

Enter passphrase for /home/xxx/.ssh/id_rsa: 输入刚才记起来的密码,然后回车

(4)将SSH key添加到Github账户中

这一步,不用像网上说的那么复杂,直接在打开idrsa.pub这个文件(这就是我们刚刚生成的ssh key文件),一般大致路径如下(每个人电脑不同,路径也会不同):系统盘符 —- 用户名 —- 计算机用户名 —-.ssh ,在这里名就可以看到 idrsa、idrsa.pub 、knownhost这三个文件,打开id_rsa.pub,将里面的内容原样全部复制起来。打开github.com,登入账户,点击头像旁边的下拉按钮,选择settings —- ssh and gpg keys —— new ssh key —- 粘贴 —- 保存。如下图:

(5)保存后,就能在上面看见刚建立的ssh key,之后在git 客户端就能够使用了

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180903A0GYXG00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券