【发布时间】:2013-03-03 20:38:23
【问题描述】:
由于多年前签入了许多大 blob,我的存储库变得非常大。它们已在后续修订中被删除,不再需要,所以我现在应该可以清除对它们的任何引用。
我看到了一些关于使用 git filter-branch 的参考,但使用这个命令似乎很危险而且很笨拙,所以我尝试了这个:
git checkout --orphan new-master
git rm -rf --cached *
git merge --squash master
git branch -D master
git gc --prune=now
这不应该意味着在历史的任何时候创建并随后删除的任何内容都将被永久删除吗?
由于某种原因,它似乎不起作用 - 大小或多或少相同。
有什么建议吗?
【问题讨论】:
标签: git git-filter-branch git-gc