4

假设我在 git 存储库提交和推送中添加了 1 GB 电影。接下来我恢复我刚刚推送的提交并推送它。现在最新的头不再包含 1 GB 文件。

即使我刚刚恢复了提交,1 GB 文件现在永久成为 git 历史记录的一部分是否正确?这意味着即使我正在处理没有 1 GB 文件的最新磁头,repo 仍然大 1 GB 并且将永远保持不变?

4

1 回答 1

3

即使我刚刚恢复了提交,1 GB 文件现在永久成为 git 历史记录的一部分是否正确?

是的,repo 仍然很大:创建了一个版本控制系统来保留历史。

您需要过滤它的历史并清理它(使用git filter-branchBFG)以减小它的大小(这会改变它的历史)

另外,如“如何在运行 BFG Repo Cleaner 后更新/缩小我的 github 存储库的大小”中所述,您需要在过滤器之后:

git reflog expire --expire=now --all
git gc --prune=now --aggressive
于 2014-12-10T08:49:25.973 回答