Этот bash "one-liner" отображает 10 самых больших BLOB-объектов в хранилище, отсортированных от самых маленьких до самых больших.В отличие от других ответов, этот включает все файлы, отслеживаемые хранилищем , даже те, которые отсутствуют ни в одной ветке.
Это очень быстро , легко копировать и вставлять и требует только стандартные утилиты GNU.
git rev-list --objects --all \
| git cat-file --batch-check='%(objecttype) %(objectname) %(objectsize) %(rest)' \
| awk '/^blob/ {print substr($0,6)}' \
| sort --numeric-sort --key=2 \
| tail \
| cut --complement --characters=13-40 \
| numfmt --field=2 --to=iec-i --suffix=B --padding=7 --round=nearest
Первые четыре строки реализуют основные функциональные возможности, пятая ограничивает количество результатов, в то время как последние две строки предоставляют приятные удобочитаемый вывод , который выглядит следующим образом:
...
0d99bb931299 530KiB path/to/some-image.jpg
2ba44098e28f 12MiB path/to/hires-image.png
bd1741ddce0d 63MiB path/to/some-video-1080p.mp4
Для получения дополнительной информации, включая дальнейшую фильтрацию вариантов использования и формат вывода, более подходящий для обработки сценария, см. Мой оригинальный ответ к аналогичному вопросу.