Удалить все неиспользуемые объекты можно командой
git gc
После объединения ветки, в которой велась разработка, с основной веткой проекта всегда остается указатель на эту ветку. Ваш коллега может удалить её у себя в репозитории и даже удалить её во внешнем репозитории, но ваш локальный репозиторий всё ещё будет хранить информацию об этой ветке.
Удалить все ветки, которых нет во внешнем репозитории можно командой
git remote prune origin
Если даже на какой-либо объект нет явной ссылки, то на протяжении 30 дней на все объекты сохраняется ссылка в reflog . По этому когда производится уборка мусора все коммиты за последний месяц всё равно остаются в репозитории.
Чтобы избавиться от таких недоступных комитов, выполним последовательность команд
git reflog expire --expire=1.minute refs/heads/master
git fsck –unreachable
git gc
Коментарии к заметке
Спасибо тебе добрый человек :) А то (use ‘git remote prune’ to remove) уже замучал.
http://binary-notes.ru/most-used-git-commands/
[…] Clear git repo (rus) […]