Прочистить репозиторий
h4 opened this issue · 7 comments
Сейчас, когда делаешь git clone git@github.com:web-standards-ru/web-standards-days.git
к тебе приезжает 104.62 MiB, что несколько до фига.
Причина — мы удалили презентации и прочую тяжеляку из working copy, но не из .git/objects
Решение этой проблемы есть, но для него придётся полностью перезалить репозиторий, что может привести к конфликтам у тех, кто давно его вытянул и потом попробует что-то влить обратно.
А разве нет какой-нибудь команды, которая дропнет из истории то, что нам не хотелось бы хранить?
В гите нельзя просто дропнуть, нужно переписать дерево коммитов, повыбрасывав куски .git/objects.
BTW, перенёс префикс [dev] в названиях тасков в лейбл.
Для тех, кто сидит на gprs есть вот такой временный костыль:
$ git clone --depth 30 git@github.com:web-standards-ru/web-standards-days.git
Cloning into 'web-standards-days'...
remote: Counting objects: 369, done.
remote: Compressing objects: 100% (222/222), done.
remote: Total 369 (delta 94), reused 349 (delta 84)
Receiving objects: 100% (369/369), 1.07 MiB | 687 KiB/s, done.
Resolving deltas: 100% (94/94), done.
@h4, ветка new
начата «сиротой», поэтому всё должно быть нормально с тяжестями. Так ведь? Я правда ещё не придумал, как она вольётся в master
(или заменит его).
Неа. Не так. Весь мусор хранится в чанках в .git
. Поэтому всё равно надо будет делать filter-branch.
Алиллушеньки, закрываем!