CClaude Code Catalog
전체 Hooks

브랜치 보호 가드

Pre-Tool입문Hook 타입: pre-tool-use

브랜치 보호 가드는 모든 파일 쓰기, 편집, git commit 작업을 가로채서 현재 git 브랜치가 보호 브랜치 목록에 포함되어 있는지 확인합니다. Claude가 main, master, production 또는 사용자가 지정한 브랜치에서 파일을 수정하려고 하면 Hook이 해당 작업을 차단하고 feature 브랜치를 먼저 생성하도록 안내합니다. 이를 통해 중요한 브랜치에 대한 실수로 인한 직접 commit을 방지하고 팀의 브랜치 전략을 강제합니다.

git브랜치보호안전

Hook 코드

#!/bin/bash # Branch Protection Guard Hook # Blocks writes and commits on protected branches # Protected branches list (customize as needed) PROTECTED_BRANCHES="main master production staging" # Only check write/edit/bash operations if [[ "$TOOL_NAME" != "Edit" ]] && [[ "$TOOL_NAME" != "Write" ]] && [[ "$TOOL_NAME" != "Bash" ]]; then exit 0 fi # For Bash, only check git commit/push commands if [[ "$TOOL_NAME" == "Bash" ]]; then if ! echo "$TOOL_INPUT" | grep -qE "git (commit|push|merge|rebase)"; then exit 0 fi fi # Get current branch CURRENT_BRANCH=$(git rev-parse --abbrev-ref HEAD 2>/dev/null) if [ -z "$CURRENT_BRANCH" ]; then exit 0 # Not in a git repo, skip fi for BRANCH in $PROTECTED_BRANCHES; do if [ "$CURRENT_BRANCH" = "$BRANCH" ]; then echo "BLOCKED: Cannot modify files on protected branch '$BRANCH'." echo "Please create a feature branch first:" echo " git checkout -b feature/your-change" exit 1 fi done exit 0

이 Hook을 Claude Code 설정 또는 .claude/settings.json에 추가하면 활성화됩니다.

실행 미리보기

브랜치 보호 가드

브랜치 보호 가드에 대해

Claude Code Hooks는 Claude 작업 중 특정 이벤트에 반응하여 커스텀 셸 명령을 자동으로 실행합니다. 브랜치 보호 가드은(는) 입문 수준의 Pre-Tool Hook으로, 개발 워크플로우의 핵심 시점에서 작업을 자동화하여 수동 단계를 줄이고 팀 전체의 일관성을 유지합니다.

관련 Hooks