Перейти к содержанию

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 не меняется и коммит продолжается со старым значением.


  1. Контрольные суммы фиксируют конкретный бинарный PDF, а не смысловое состояние исходников. Даже небольшие изменения метаданных или порядка сборки могут поменять хэш без заметной визуальной разницы.