diff --git a/.claude/hooks/schutz-main.sh b/.claude/hooks/schutz-main.sh new file mode 100644 index 0000000..e4ba0be --- /dev/null +++ b/.claude/hooks/schutz-main.sh @@ -0,0 +1,11 @@ +#!/usr/bin/env bash +# Blockiert git commit und git push, solange main ausgecheckt ist. +befehl=$(node -e 'let s="";process.stdin.on("data",d=>s+=d).on("end",()=>{try{console.log(JSON.parse(s).tool_input?.command??"")}catch{console.log("")}})') +if echo "$befehl" | grep -Eq 'git (commit|push)'; then + branch=$(git -C "$CLAUDE_PROJECT_DIR" branch --show-current) + if [ "$branch" = "main" ]; then + echo "Du stehst auf main. Lege zuerst einen Branch an: git switch -c feat/" >&2 + exit 2 + fi +fi +exit 0 \ No newline at end of file