上一篇博客已经介绍了git本地仓库的基本操作,接下来记录一下如何将本地仓库上传到远程仓库中
远程仓库:托管在因特网的版本库,保存版本库的历史记录,多人协作
1. 创建远程版本库,得到远程仓库git地址
2. 本地仓库添加远程仓库地址
bash
git remote add pzclient(这是取的别名) https://github.com/sanzh113/companyManage.git
git remote -v #查看当前仓库中有哪些远程仓库地址
3. 本地仓库推送版本记录到远程仓库
bash
git push -u pzclient master:main(本地仓库分支:远程仓库分支,github的默认分支是main)
本来到这一步以为可以顺利进行,结果出现这个问题:fatal: unable to access 'https://github.com/sanzh113/companyManage.git/': Failure when receiving data from the peer
然后去查了一些博客,原因是首次本地联通没有配置密钥
坑1解决步骤
step1:先清除之前的全局用户名和邮箱
step2:找到.ssh文件,一般在C盘下用户下面,如图。在 .ssh 文件夹中右键选择 Git Bash Here,打开命令行窗口
step3: 输入
bash
ssh-keygen -t rsa -C "your_email_adress" -f id_rsa_github -C "Github"
#"your_email_adress" 替换成你的邮箱账号, -f id_rsa_github 文件名,可自定义,默认为 id_rsa ,-C "Github" 为描述信息
完成会发现文件夹下出现了两个文件,一个公钥一个私钥
step4:然后去github进入设置,点击1,2,进入2,用记事本打开 id_rsa_github.pub 并复制里面的内容到key输入框里
确认后成功添加
配置 config 文件。打开 .ssh 文件夹查看是否有 config 文件,如果没有直接右键创建一个。然后复制下面的内容去填写你的 config 配置
bash
Host Github
HostName github.com
user github的用户名
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_github
按照这个博主的方法,下一步本该验证了,但但但又出问题了...报错git@github.com: Permission denied (publickey).
(原因:首次连接host 20.205.243.166,所以出于安全考虑,这个IP并不被信任。虽然我们都知道20.205.243.166就是https://github.com,可是当坏蛋模仿20.205.243.166时就糟糕了,会导致建立的SSH连接指向一个邪恶的服务器网址,所以上面才会提醒key fingerprint是SHA256:+DiY3wvvV6TuJJhbpZisF/zLDA0zPMSvHdkr4UvCOqU,让你确认这个key fingerprint是不是就是真正的你想连接的 https://github.com 的key fingerprint,因为坏蛋网址可以模仿20.205.243.166,但是它自己的RSA fingerprint是固定的,改不了的)
坑2解决步骤参考 :博客
按照上述步骤添加后,还是报同样的错,遂只好另寻他法
最终解决参考这篇博文
最后终于成功了!!!可喜可贺
然后回到 3. 本地仓库推送版本记录到远程仓库
bash
git push -u pzclient master:main(本地仓库分支:远程仓库分支,github的默认分支是main)
that's all