Секреты в Git: secret scanning, .gitignore и что делать после утечки
Почему «удалить коммит» недостаточно, как включить сканирование на GitHub и как ротировать ключи без простоя.
История репозитория долго живёт в форках и кэшах; утёкший токен нужно считать скомпрометированным даже после force-push.
GitHub и аналоги умеют блокировать push с известными шаблонами секретов и оповещать владельцев — включите это до первого инцидента.
- Secret scanning — GitHub Docs — Обзор функции для репозиториев.
- Removing sensitive data — GitHub Docs — Ограничения и шаги после утечки.
Профилактика
Используйте `.env` в `.gitignore`, шаблон `.env.example` без значений и pre-commit hook с локальным сканером.
В CI подставляйте секреты из хранилища, а не echo в лог.