搭建GitHub镜像站

0、起因

由于某些众所周知的原因,国内访问外国网站有些困难。在出了某些事后,GitHub的访问出现了随机的连接重置。至于中国大陆境内分服务器访问GitHub就更困难了。
对于拥有中国香港服务器的我,怎么可能忍受无法从GitHub复制项目到本地呢?因此,我就搭建了GitHub镜像站。

1、反向代理

在境外服务器上新建网站:

github.mirror.com
rawgithub.mirror.com
objectsgithub.mirror.com
codeloadgithub.mirror.com

分别对应:

github.com
raw.githubusercontent.com
objects.githubusercontent.com
codeload.github.com

分别在Git Clone整个项目下载单个文件下载release下载master.zip时可以使用。
注意:配置完反向代理、SSL后,记得绑定源站域名!

2、配置Git Clone全局替换

使用脚本:

此处内容需要评论回复(自动审核)或加入 QQ 技术交流群(立即获得内容)后方可阅读。赞助(二维码在文章下方)后联系作者可一次性解锁所有(包括之后的新文章)。

实现Git Clone全局替换为镜像站地址。

3、配置hosts

/etc/hosts
添加:
conf
1
2
3
4
x.x.x.x github.com
x.x.x.x raw.githubusercontent.com
x.x.x.x objects.githubusercontent.com
x.x.x.x codeloadgithub.tsinbei.com

其中x.x.x.x为镜像站的服务器公网IP

4、忽略SSL证书错误

/root/.bashrc
中添加:
conf
1
alias wget='wget --no-check-certificate'

并执行命令

Bash
1
source ~/.bashrc

使其生效。

5、测试

可以使用

Bash
1
git clone https://github.com/...
Bash
1
wget https://raw.githubusercontent.com/...

等命令来测试效果。

文章作者
Hsukqi Lee
发布于

2022-02-05

修改于

2023-01-25

许可协议

CC BY-NC-ND 4.0

评论

昵称
邮箱
网址
13 条

Ghriver

Ghriver

学习学习

  回复

Ghriver

Ghriver

学习学习

  回复

zxk

zxk

谢谢分享

  回复

访客233

访客233

过来学习一下

  回复

syy233

syy233

学习学习

  回复

神秘人

神秘人

学习学习

  回复

iNMB

学习

  回复

10001

10001

学习学习,自己搭建一个试试

  回复

啊这

啊这

学习学习,自己搭建一个试试

  回复

元小白

元小白

看一下

  回复