最新文章
泰课新年学课蛇来运转欢度春节活动
02-01 20:25
共庆2024圣诞、元旦泰课双蛋活动
12-16 10:21
泰课共庆75周年国庆活动!
10-05 21:24
暑假双月联动学习计划 7月15 - 8月21日
07-14 23:09
泰课在线劳动光荣,勤学快乐之五月勤学季活动
04-30 21:19
2024年青春绽放开学季活动
03-11 13:01
git添加私钥在bash中与github仓库同步(vs code整合gitbash)
使用GitHub的前提是需要进行网络代理设置,后续的软件升级、Git Bash与仓库同步等操作都需要网络代理。
为SSH配置id_rsa
如果在执行以下命令时出错:
$ ssh-add ~/.ssh/id_rsa
Could not open a connection to your authentication agent.
在Git Bash中执行如下命令,然后再执行其他步骤(注意:这里不是单引号,请正确复制):
$ eval `ssh-agent -s`
Agent pid 4696
这里的pid 4696是示例,你实际看到的会是一个不同的数字,这是正常现象。
在Git Bash中生成SSH Key
生成SSH Key,执行以下命令,过程中一直按回车键(请将example@qq.com替换为你自己用于GitHub的邮箱):
$ ssh-keygen -t rsa -C "example@qq.com"
添加SSH Key到SSH Agent
$ ssh-add ~/.ssh/id_rsa
Identity added: /c/Users/15623/.ssh/id_rsa (/c/Users/15623/.ssh/id_rsa)
复制SSH公钥
复制生成的id_rsa.pub文件中的内容,该文件通常位于C:\Users\你的用户名\.ssh路径下。
在GitHub网站上添加SSH公钥
打开你的GitHub网站上的账号设置,将复制的SSH公钥添加到相应位置。
测试SSH连接
在Git Bash中执行以下命令,若输出如下信息则说明连接成功:
$ ssh -T git@github.com
Hi XXXX! You've successfully authenticated, but GitHub does not provide shell access.
解决同步时的报错问题
SSL连接重置问题
在Git Bash中同步时可能会出现如下报错:
报错:OpenSSL SSL_connect: Connection was reset in connection to github.com:443
此时,在Git Bash中设置一下sslverify:
$ git config --global http.sslVerify false
升级Git客户端
由于GitHub禁用了TLS v1.0和v1.1,需要将Windows中的Git客户端升级到最新版本:
$ git update-git-for-windows
查看与设置Git的全局代理
查看全局配置
$ git config --global -l
设置全局配置
在Git Bash中执行以下命令进行设置:
$ git config --global user.name "xxxname"
$ git config --global user.email "xxxx@taikr.com"
$ git config --global http.proxy 127.0.0.1:7890
$ git config --global https.proxy 127.0.0.1:7890
示例中的7890端口是代理软件的端口,你需要找到自己代理软件的端口并进行相应修改。
设置好后,查看全局配置应该会显示类似如下内容:
$ git config --global -l
user.name=xxx
user.email=xxxing@taikr.com
core.longpaths=true
remote.origin.url=https://github.com/roubingcode/xxxs.git
http.sslverify=false
http.proxy=127.0.0.1:10809
https.proxy=127.0.0.1:10809
使用Access Token进行同步
最后在Git Bash进行同步时,会弹出一个界面让你填写一个Access Token。
创建Access Token
进入GitHub用户设置页面,点击最下方的Developer settings,然后选择Personal access tokens。创建Access Token时,若只需要进行基本同步操作,将repo部分勾选即可。生成Token后,将其填入相应位置,之后就可以正常进行同步操作了。