Что: b86432a85a70171c5e3cab83ef233d1d054b17b5
Когда: 2023-11-22 20:32:33+03:00
Темы: git tip
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 килобайт.
Сгенерирован: SGBlog 0.34.0