最近遇到一个闹心的事情,我自己网站的源码放在github上托管,项目部署在阿里云服务器上。

每次更新时,都是用git pull 命令拉取最新的代码,git命令年后突然变慢了,根本拉取不了。提了工单,回复说github是外网,难免有线路不稳定的情况。使用ping命令测试,延迟很高。

经过一番谷歌和摸索,终于找到了解决办法,为git配置ssh代理。

第一步,需要申请一台阿里云香港服务器,我原本就有。

第二步,生成ssh key

ssh-keygen -t rsa -C "your mail"

一路回车就行,在~/.ssh 目录下会生成id_rsa.pub 文件

第三步,为GitHub添加SSH Key,就用id_rsa.pub里的内容

第四步,ssh-copy-id

ssh-copy-id -i .ssh/id_rsa.pub root@香港ip

输入密码,此后登录香港机器就不需要密码了

第五步,安装nc
在大陆服务器和香港服务器上都安装nc

yum install nc

第六步,config
新建.ssh/config文件

Host github.com
ProxyCommand  ssh root@香港ip nc  %h %p

至此,你在服务器上使用git命令进行的操作,都将由香港服务器来完成。

git clone 的时候,一定要选ssh的地址,类似于git@github.com:kwsy/yourproject.git,这个在github页面上点击clone按钮时,是可以选择的。

ok啦,终于可以用git了。

Logo

鸿蒙生态一站式服务平台。

更多推荐