signal-batch/.githooks/pre-commit
htlee a98fdcbdc9 chore: 팀 워크플로우 v1.2.0 초기 구성 (java-maven)
- .claude/rules: team-policy, git-workflow, code-style, naming, testing
- .claude/skills: init-project, sync-team-workflow, create-mr, fix-issue
- .claude/scripts: on-pre-compact, on-post-compact, on-commit (v1.2.0)
- .claude/settings.json: 팀 표준 권한 allow/deny + script hooks
- .githooks: commit-msg, pre-commit (mvn compile), post-checkout
- .mvn/settings.xml: Nexus 미러 설정
- .editorconfig: 팀 표준 포맷
- CLAUDE.md: 팀 규칙 참조 섹션 추가
- .gitignore: !.claude/ negation 추가 (글로벌 gitignore override)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-18 20:52:38 +09:00

34 lines
1.3 KiB
Bash

#!/bin/bash
#==============================================================================
# pre-commit hook (Java Maven)
# Maven 컴파일 검증 — 컴파일 실패 시 커밋 차단
#==============================================================================
echo "pre-commit: Maven 컴파일 검증 중..."
# Maven Wrapper 사용 (없으면 mvn 사용)
if [ -f "./mvnw" ]; then
MVN="./mvnw"
elif command -v mvn &>/dev/null; then
MVN="mvn"
else
echo "경고: Maven이 설치되지 않았습니다. 컴파일 검증을 건너뜁니다."
exit 0
fi
# 컴파일 검증 (테스트 제외, 오프라인 가능)
$MVN compile -q -DskipTests 2>&1
RESULT=$?
if [ $RESULT -ne 0 ]; then
echo ""
echo "╔══════════════════════════════════════════════════════════╗"
echo "║ 컴파일 실패! 커밋이 차단되었습니다. ║"
echo "║ 컴파일 오류를 수정한 후 다시 커밋해주세요. ║"
echo "╚══════════════════════════════════════════════════════════╝"
echo ""
exit 1
fi
echo "pre-commit: 컴파일 성공"