From: Sergey Matveev Date: Wed, 22 Nov 2023 17:32:33 +0000 (+0300) Subject: git reflog это тоже полноценные ссылки на объекты X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=b86432a85a70171c5e3cab83ef233d1d054b17b5;p=stargrave-blog.git git reflog это тоже полноценные ссылки на объекты Делал тут rebase одного репозитория, схлопывая кучу коммитов в один. При этом были удаления огромных файлов. git log --stat показывает что кода осталось с гулькин нос во всей истории, но .git директория занимает полсотни мегабайт. git gc --aggressive --prune=now всё равно не очищает то, на что ничего не ссылается (как мне казалось). Никаких веток, тэгов, remote-ов -- ничего нет лишнего. git fsck --full --unreachable --dangling тоже ничего не показывают. Только после всего этого глаз зацепился за наличие reflog-а, который и после кучи rebase-ов содержал тьму ссылок. Я почему-то думал, что он именно как log себя ведёт -- в любой момент объекты на которые он ссылается могут пропасть. Но только после его подчистки (git reflog expire --all --expire=now), git gc всё схлопнул до 85 килобайт. ---