为什么gitlab存储比使用git clone下载的要大?
由于旧的未使用的文件,我的回购非常大(1.4GB)。所以我决定和男朋友一起打扫。在一次推送和克隆之后,我本地项目中的一个为什么gitlab存储比使用git clone下载的要大?,git,gitlab,Git,Gitlab,由于旧的未使用的文件,我的回购非常大(1.4GB)。所以我决定和男朋友一起打扫。在一次推送和克隆之后,我本地项目中的一个du-sh给了我70个月,所以没问题 但是,在我的gitlab GUI上,回购仍然非常大(1.3Go),您可以在这里看到: 我曾尝试在“设置”中开始一项家务活,但没有改变。 您知道我如何缩小尺寸吗?您已经完成了GitLab建议中的第一步。下面的步骤来自他们关于如何操作的文档 这将是一个破坏性的行动。您正在重写存储库历史记录 安装 生成一个 从步骤2下载导出 解压缩导出:
du-sh
给了我70个月,所以没问题
但是,在我的gitlab GUI上,回购仍然非常大(1.3Go),您可以在这里看到:
我曾尝试在“设置”中开始一项家务活,但没有改变。
您知道我如何缩小尺寸吗?您已经完成了GitLab建议中的第一步。下面的步骤来自他们关于如何操作的文档 这将是一个破坏性的行动。您正在重写存储库历史记录
tar xzf backup.tar.gz
这将包含由git bundle
git Clone--bar--mirror/path/to/project.bundle
To purge all large files, you will want to use `--strip-blobs-bigger-than`. This example reports files larger than 10 megabytes:
`git filter-repo --strip-blobs-bigger-than 10M`
To purge specific files by path, you can combine both `--path` and `--invert-path`:
`git filter-repo --path path/to/large.mp4` --invert-paths
project.bundle
克隆将origin
远程设置为本地bundle文件。这是不需要的,因此请删除此源文件
远程文件,并将其重置到存储库中
git remote remove origin
git remote add origin http://gitlab.example.com/<namespace>/<repository>.git
git push origin --force 'refs/tags/*'
git push origin --force 'refs/replace/*'
Settings->repository
git filter repo
命令创建的commit映射。GitLab将每个文件限制为10M,但如果需要,您可以将其拆分并逐块上传
开始清理
听起来您已经完成了GitLab建议的第一部分。他们有我建议您查看的关于如何使用的文档。如果这不起作用,请更新问题,详细说明失败的地方。你启用docker注册表图像功能了吗?@Andy,好的,现在可以了!以前,我使用了BFG,它不生成“提交映射”。有了filter repo,我可以在清理过程中使用此文件,而且效果很好。你可以张贴你的答案,这样我就可以标记为已解决。
git push origin --force 'refs/replace/*'