1.前言
- Git 是一个分布式代码管理工具;
- 开发者可以在本地使用 push 远程更新代码,也可以在本地使用 clone 获取 GitHub 上的代码;
2.问题描述
- 使用 Git 获取代码时,遇到Permission denied (publickey). fatal:错误。
3.错误信息
Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists.
4.发生原因
- 电脑公钥(publickey)未添加至github,导致GitHub无法识别本机。
5.解决方法
- 获取本地电脑公钥,然后登录github账号,添加公钥至github。
- 具体步骤如下:
第一步、设置Git的user name和email;
git config --global user.name "此处输入你GitHub的user name"
git config --global user.email "此处输入你GitHub的注册email"
此时,你的电脑本地会生成SSH密钥。
你可以使用 cd ~/.ssh 查看是否已经生成SSH秘钥,如果 ~/.ssh 文件存在则表示已经生成SSH秘钥。
第二步、生成秘钥文件;
ssh-keygen -t rsa -C "此处输入你GitHub的注册email"
第三步、根据提示输入密码;
- 你也可以选择直接敲两个回车,设置密码为空;
第四步、获取 id_rsa.pub 公钥,添加至GitHub;
cd ~/.ssh
vi id_rsa.pub # 使用 vi 编辑模式进入公钥文件
-
下图即为公钥文件内容,将其全部选定复制。
-
登录github,进入个人设置(settings--->ssh and gpg keys-->new ssh key),在 key 输入框下右键粘贴。