mirrors 提供 git 服务
•
值此新春佳节来临之际,科大开源软件镜像 提供了 git 服务。至此,科大开源软件镜像提供了 http、https、ftp、rsync、git 五种服务。
第一批上线的 git 镜像包括:
- Android Open Source Project (AOSP) 镜像:使用帮助
- Linux Kernel 镜像:
git clone git://mirrors.ustc.edu.cn/linux.git
- Homebrew 镜像:
git clone git://mirrors.ustc.edu.cn/homebrew.git
说明:
- 大多数镜像每天同步一次,Linux Kernel 镜像每 6 小时同步一次。
- 由于服务器资源限制,每个 IP 地址限制 5 个并发 git 连接。
- 暂不提供 gitweb 在线查看源码服务,但可以通过 http 方式访问这些 git 仓库。
如果您希望添加其他开源 git 仓库,欢迎联系 lug (at) ustc.edu.cn。
顺祝各位新春快乐,羊年大吉!
以下内容是给服务器维护人员看的。
需要给 _git._tcp.mirrors.ustc.edu.cn
添加 SRV 记录,指明 git 服务的端口号:
$ dig +short SRV _git._tcp.mirrors.ustc.edu.cn
5 0 9418 mirrors.ustc.edu.cn.
在 /etc/iptables/rules.v{4,6}
的合适位置分别添加下述防火墙规则,打开 9418 端口:
-A INPUT -p tcp --syn --dport 9418 -m connlimit --connlimit-above 5 -j REJECT
-A INPUT -p tcp --dport 9418 -j ACCEPT
以 mirror 用户身份运行 git daemon --base-path=/srv/git --export-all --reuseaddr --max-connections=128
开机自启动:在 /etc/rc.local
中添加
nohup sudo -u mirror git daemon --base-path=/srv/git --export-all --reuseaddr --max-connections=128 >/dev/null 2>&1 &
添加 Git 源
- 把 git bare 目录符号链接到
/srv/git
里面。 - 以 mirror 用户身份添加 crontab 自动同步:
30 4 * * * /home/mirror/bin/gitsync /path/to/example.git
- 配置持久化:
crontab -l > ~/etc/crontab.backup
,git commit & push