访问github过慢解决经过,SSH同时管理gitlab、gitHub账户

1,111 阅读2分钟

在国内,访问github超级慢,实在受不了了,花了一上午的时间,细细琢磨了这玩意; 记录下流程,仅供参考;

SSH配置

我选择通过SSH配置,来提高加载速度,也有不少文章使用HTTP的方式,能达到提速的效果,但是我这边,尝试了下使用SSH,对我比较有效;

打开终端,执行命令:

cd ~/.ssh进入ssh文件;

ls命令查看ssh文件夹内,是否存在gitlab、gitHub对应的rsa文件;

不存在rsa文件,则创建gitLab、gitHub公钥;

# id_rsa_gitlab名称,可自定义
    ssh-keygen -t rsa -C "你的gitlabe账号(xxx@.com)" -f ~/.ssh/id_rsa_gitlab
# id_rsa_github名称,可自定义
ssh-keygen -t rsa -C "你的github账号(xxx@.com)" -f ~/.ssh/id_rsa_github

完成之后,在~/.ssh 文件夹内,会生成4个文件

id_rsa_github
id_rsa_github.pub

id_rsa_gitlab
id_rsa_gitlab.pub

配置公钥

# 获取公钥信息
# 方法一
可以通过命令产看公钥信息: cat ~/.ssh/id_rsa_gitlab.pub
然后复制 公钥信息

#方法二
通过命令拷贝公钥到剪切板
pbcopy < ~/.ssh/id_rsa_github.pub

配置github公钥

登录github,在Settings > SSH and GPG Keys > New SSH key中配置公钥

iShot2022-03-11 13.25.25.jpg

iShot2022-03-11 13.29.14.jpg

iShot2022-03-11 13.29.34.jpg

iShot2022-03-11 13.30.00.jpg

配置gitlab公钥

登录github,在Profile Settings > SSH Keys中配置公钥

iShot2022-03-11 13.35.54.jpg

通过SSH-Agent管理SSH

如果我们需要配置多个SSH文件,最好通过Agent来管理SSH文件,通过不同的域名区分;

在~/.ssh文件夹中,查看是否存在config文件;

# 进入~/.ssh文件夹
cd ~/.ssh

# 查看文件夹内,查看是否存在congif文件

ls

如果不存在config文件,则创建config文件;

# 创建config文件
touch ~/.ssh/config
# 编辑config文件
vi ~/.ssh/config

config配置模版如下:

# Personal github account
Host github.com
   HostName github.com
   IdentityFile ~/.ssh/id_rsa_github
   
# Personal gitlab account
Host gitlab.com #(这里写公司gitlab域名)
   HostName gitlab.com
   User you name #(这里写你gitlab的名字即可)
   IdentityFile ~/.ssh/id_rsa_gitlab

因为我使用的是sourceTree(本人比较low,没有使用git post等命令拉取代码的习惯😂),所以我的gitlab的rsa,是直接使用sourceTree默认生成的

iShot2022-03-11 13.46.39.jpg

配置完后,通过命令,测试一下github网站是否成功

ssh -T git@github.com

如果出现下图,就表示gitHub的 SSH 配置成功;

iShot2022-03-11 13.53.07.jpg

到这里,基本大功告成

尝试在网站执行 github.com,速度还是不错的。哈哈哈哈哈哈哈,开心;

但是我尝试通过命令ping github.com,我的天,居然显示超时。。。。。

再再再配置一下hosts试试:

打开这个网址:https://www.ipaddress.com

在网址内,搜索 gthub.com

把搜索出来的地址,复制保存;

iShot2022-03-11 13.59.30.jpg

再搜索: github.global.ssl.fastly.net 把地址也复制保存;

iShot2022-03-11 14.02.58.jpg

配置hosts文件

打开终端,输入 sudo vi /etc/hosts

然后会提示你,是选择 只读、编辑、删除 等等,

iShot2022-03-11 14.04.49.jpg

输入E,选择编辑即可;

然后点击 键盘 i;进入编辑状态;

把刚才的到的两个地址,按照这个格式写入hosts文件

140.xxx.xxx.xxx github.com  
199.xxx.xxx.xxx github.global.ssl.fastly.net

然后按住shift + :,接着输入wq,保存hosts文件并退出编辑;

至此,再去执行ping github.com 就不会显示超时了;

并且,浏览 github.com网站,也是速度杠杠的了;