减少git存储库的大小

时间:2017-01-30 09:58:58

标签: git

大约一年前,当我第一次开始使用git(在现有的git项目上)时,我将一些大文件推送到一个存储目录,我不应该这样做。一年之后,我可以看到这个项目已经增长到接近60Gb,而且可能不出所料,我现在克隆这个回购有问题。我尝试使用此处给出的说明删除这些文件(有2个VBox虚拟机映像和人类基因组......):https://confluence.atlassian.com/bitbucket/reduce-repository-size-321848262.html

我按照"手动审查存储库中的大文件"中的说明进行操作。 on-wards,建议运行他们提供的脚本来识别大文件,然后按照一系列命令删除它。 但是,完成此操作并在存储中查看存储库时,大小保持不变,克隆它的问题也是如此。 值得注意的两个问题是: 运行以下命令以删除问题文件:

$git filter-branch --force --index-filter "git rm --cached --ignore-unmatch 'src/Base/Base4.vdi'" HEAD

导致此错误(尽管使用路径周围的引号进行了一次纠正,但错误已经再次返回,可能是其他原因?):

WARNING: Ref 'refs/heads/master' is unchanged

其次,我的git clone命令(在给出初始问题的情况下遵循了一些额外的说明,这似乎是基于以较小的块下载repo):

`git config --global http.postBuffer 1048576000
git clone --recursive ssh://git@<the project repo>
git config --global core.compression 0
git clone --depth 1 ssh://git@<the project repo>
git fetch --unshallow`

导致:

Receiving objects:  54% (13945/25407), 9.19 GiB | 1.46 MiB/s
error: inflate: data stream error (invalid distance code)B/s                                                             
fatal: pack has bad object at offset 9654044026: inflate returned -3
fatal: index-pack failed

另外值得注意的是,当我从该网站重新运行./git_find_big.sh文件时,大文件会继续显示。有任何想法吗?我正在考虑创建一个新的git repo,并且如果我无法解决这个问题,就会对前一个进行捣蛋。

0 个答案:

没有答案