Git从历史记录中删除了大的二进制文件,但保留了标签



这个问题已经在Stack Overflow上发表了很多次,但是没有一个答案包括如果你有标签该怎么办。

我的问题是我使用

从每个分支清除了一个二进制文件。
git filter-branch -f --index-filter 'git rm -rf --ignore-unmatch audio_samples' HEAD

这似乎工作得很好,但我的存储库没有变得更小!即使当我尝试

git clone file:///path/to/project1 project1clone

它仍然是相同的大小。

只有当我签出一个标签时,我才意识到二进制文件仍然被引用。好了,我去掉了所有的标签,现在一个新的克隆库更小了。然而,我需要我的标签,所以我恢复到我的项目目录的备份版本,现在又回到了起点。如何使它使我的标签不引用一个提交与大的二进制文件,但仍然指向他们应该在哪里?

您的命令只是重写HEAD。试着用-- --all代替HEAD

最新更新