Как почистить историю git?

SN
На сайте с 04.07.2013
Offline
84
569

Есть небольшой проект. Периодически делаю коммиты и отправляю ветку на сервер (push). За всю историю было коммитов 40. Размер файлов с кодами отсилу 300 кб однако размер репозитория разросся до 500 мб. Я особо не заморичивался и добавлял в индекс все что было в папке рабочего проекта. Туда иногда попадал всякий хлам который тоже коммитился. Сейчас хочу почистить историю проекта и поудалять тяжелые файлы, чтобы уменьшить размер репозитория. В связи с этим вопросы:

1. Как посмотреть в истории коммитов общий размер добавленных в коммит файлов. Т.е. хотелось бы видеть список всех коммитов на против которых был бы отражен размер добавленной в репозитопий информации.

2. Как увидеть список директорий/файлов конкретного коммита с указанием размеров директории/файла. Было бы здорово с возможностью фильтрации по размеру.

3. Как удалить конкретный файл или директорию с файлами полностью из коммита и истории git?

Буду благодарен за любую информацию.

Оптимизайка
На сайте с 11.03.2012
Offline
396
#1

Это надо что ли


git reflog expire --all --expire=now
git gc --aggressive --prune=now
⭐ BotGuard (https://botguard.net) ⭐ — защита вашего сайта от вредоносных ботов, воровства контента, клонирования, спама и хакерских атак!

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий