sjtug / mirror-docker

Dockerfile for SJTUG mirror
https://mirrors.sjtug.sjtu.edu.cn
GNU Affero General Public License v3.0
31 stars 6 forks source link

使用 mirror 优化 Git 仓库镜像 #35

Closed liweitianux closed 3 years ago

liweitianux commented 3 years ago

目前的 Git 镜像脚本 ( https://github.com/sjtug/mirror-docker/blob/v2/lug/worker-script/git.sh ) 使用了平常开发模式,会 checkout 一份工作区文件,这个其实没有必要,而且还占用空间。

建议使用 git mirror 方式,只会创建一个 bare 仓库,即只有 .git 目录。大致如下:

#!/bin/sh

set -xe

if [ ! -d "${LUG_path}.git" ]; then
    git clone --mirror "$LUG_origin" "${LUG_path}.git"
fi

cd "${LUG_path}.git"
git remote update --prune

参考:

skyzh commented 3 years ago

新服务器上已经使用了 bare repo,感谢您的提议。老服务器的架构明年应该会进行升级,和新服务器统一。 https://github.com/sjtug/mirror-docker-siyuan/blob/main/lug/worker-script/git.sh

liweitianux commented 3 years ago

赞!那么我把这个 issue 关闭了。多谢回复。