在使用Git将本地仓库推送到远程仓库的时候,发生了如下错误:“fatal: Could not read from remote repository.” 则可能需要生成新的SSH key
??开发者向 Git 版本库写入最常用到的协议是SSH协议,因为SSH协议使用公钥认证,可以实现无口令访问,而若使用HTTPS协议每次身份认证时都需要提供口令,即要输入GitHub 的账号和密码。
//第一步:安装git
[root@localhost ~]# yum install git
//第二步:获取ssh密钥,邮箱是注册github时使用的邮箱。(这里的邮箱跟刚才git官网上注册的一致)
[root@localhost ~]# ssh-keygen -t rsa -C "xxxxxx@qq.com"
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): //输入保存key的文件名,这个随便写,可以写了keyfilename,不写按回车键它会默认创建在 '/root/.ssh' 下。
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase): //输入密码,就是你每次提交项目代码时必须要输入密码,不想设置的话,直接按回车到下一步。
Enter same passphrase again: //再次确认密码。
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:07gnUfb1vX9w9XcU6YZf67x+27usXahJossmu4zwdgS xxxxxx@qq.com
The key's randomart image is:
+---[RSA 2048]----+
| .|
| o |
| o + .|
| E = . o +=|
| . S . . o.B|
| . + .+*|
| . . o o . +++|
| o.oo..+ o ooo*|
| .o.+=+. o.oOX|
+----[SHA256]-----+
[root@localhost ~]# //到这里就成功啦~
[root@localhost ~]# git version //验证一下是否安装成功。
git version 1.8.3.1
[root@localhost ~]# cd /root/.ssh/
[root@localhost .ssh]# ls
id_rsa id_rsa.pub
//可以看到生成了一个私钥(id_rsa)和公钥(id_rsa.pub)
[root@localhost .ssh]# vi id_rsa.pub //打开公钥文件进行复制。
使用 ssh-add ~/.ssh/id_rsa 将产生的新ssh key添加到ssh-agent中:
ssh-add ~/.ssh/id_rsa
补充: 如果出现“Could not open a connection to your authentication agent.”的错误可以使用以下两种方式解决:
eval "$(ssh-agent -s)"
eval `ssh-agent`
然后再次执行 ssh-add ~/.ssh/id_rsa 指令。
1.查看生成的 SSH 公钥和私钥:
ls ~/.ssh/
输出
2.读取公钥文件 ~/.ssh/id_rsa.pub
cat ~/.ssh/id_rsa.pub
输出一串信息
复制终端输出的公钥
登陆gitee官网:https://gitee.com/。设置->安全设置->ssh公钥.在生成公钥中张贴刚刚复制的内容。
创建完仓库后,需要奖项目克隆到本地,需要经过如下几个步骤
git clone [url]
//这里的url为刚才保存的仓库的http链接
linux目录便是我们的远端仓库。
我们首先进入我们的远端仓库中
git add [要上传的文件名]
git commit -m "日志信息"
//注意日志信息必须填写
注意:第一次提交会出现下述提示
第一行:“” 里面为你的gitee账户关联的邮箱信息;
第二行:“” 里面为你的真实姓名;
然后就可以进行下述操作!
git push
出现上述则为成功!