Git удаляет большой двоичный файл из истории — но сохраняет теги

#git #tags #binary #history

#git #Теги #двоичный #история

Вопрос:

Это было опубликовано много раз в Stack Overflow, но ни один из ответов не включает, что делать, если у вас есть теги.

Моя проблема в том, что я удалил двоичный файл из каждой ветки, используя

 git filter-branch -f --index-filter 'git rm -rf --ignore-unmatch audio_samples' HEAD
 

Казалось, это сработало хорошо, но мой репозиторий не становился меньше! Даже когда я пытался

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

Он был все того же размера.

Только когда я проверил тег, я понял, что на двоичный файл все еще ссылаются. Хорошо, итак, я удалил все свои теги, и теперь новый клонированный репозиторий меньше. Тем не менее, мне нужны мои теги, поэтому я вернулся к резервной версии каталога моего проекта и теперь вернулся к исходной точке. Как сделать так, чтобы мои теги не ссылались на коммит с большим двоичным файлом, но все же указывали на то, где они должны быть?

Ответ №1:

Ваша команда там только перезаписывается HEAD . Попробуйте использовать -- --all вместо HEAD .