#!/usr/bin/env bash # Вешает git-хуки, которые держат секреты вне git. # post-merge / post-checkout -> apply (собирает config/init.custom.conf) # pre-commit -> check (отменяет коммит с секретами) set -e cd "$(git rev-parse --show-toplevel)" mkdir -p .git/hooks cat > .git/hooks/post-merge <<'H' #!/bin/sh exec python3 scripts/config-secrets.py apply H cat > .git/hooks/post-checkout <<'H' #!/bin/sh exec python3 scripts/config-secrets.py apply H cat > .git/hooks/pre-commit <<'H' #!/bin/sh exec python3 scripts/config-secrets.py check --staged H chmod +x .git/hooks/post-merge .git/hooks/post-checkout .git/hooks/pre-commit echo "хуки установлены:" ls -l .git/hooks/post-merge .git/hooks/post-checkout .git/hooks/pre-commit