Git hooks
Чтобы перед каждым коммитом автоматически обновлялись контрольные суммы итогового PDF в README, подключите локальные hooks:
task hooks
git config core.hooksPath .githooks
Для работы hook нужен Python-пакет python-dotenv. Он указан в pyproject.toml и uv.lock.
Если окружение еще не подготовлено, установите зависимости:
task deps
uv sync
Hook считает хэши текущего PDF алгоритмами из стандартного hashlib.1 Если PDF отсутствует, README не меняется и коммит продолжается со старым значением.
-
Контрольные суммы фиксируют конкретный бинарный PDF, а не смысловое состояние исходников. Даже небольшие изменения метаданных или порядка сборки могут поменять хэш без заметной визуальной разницы. ↩