12.2K ·GitHub
Что это?
BFG Repo-Cleaner — это инструмент командной строки, который удаляет крупные или проблемные блоб-объекты (большие файлы, пароли, учётные данные, личные данные) из истории репозитория Git. Работает быстрее, чем git-filter-branch.
Это инструмент командной строки или что-то другое?
Это самостоятельный jar-файл на Java/Scala для командной строки, который запускается против клона репозитория. GUI или программного API для встраивания в другой код нет.
Как запустить его на моём репозитории?
Скачайте jar-файл BFG и запустите его через Java на зеркальном клоне репозитория без рабочей копии, затем выполните стандартные команды Git для очистки истории, как описано в документации.
Нужна ли установленная Java, чтобы им пользоваться?
Да. BFG распространяется как jar-файл, написанный на Scala, поэтому для его запуска нужна среда выполнения Java.
Насколько он быстрее git-filter-branch?
В README заявлено, что он быстрее git-filter-branch в 10–720 раз при очистке плохих данных из репозитория Git.
Кому обычно нужен этот инструмент?
Разработчикам, которым нужно удалить из истории Git случайно закоммиченные большие файлы или утёкшие секреты (пароли, учётные данные), пока они не остались в репозитории навсегда.
Какие два основных сценария использования?
Удаление случайно закоммиченных огромных файлов, которые раздувают репозиторий, и удаление паролей или других личных данных, попавших в историю коммитов.
Переписывает ли он историю Git, как git-filter-branch?
Да, он переписывает историю так же, как git-filter-branch, но намного быстрее справляется с такими типичными операциями очистки.
What are similar projects?
turbocrypt, git-sim, git-secrets, xerj, GDecay, Photon, thefuck, lazygit
Which topics is it in?
scala, git, command-line, gplv3, command-line-tool, privacy, security, cli, cross-platform, developer-tools, windows, macos