Git & GitHub Professional Workflow · 강의

커밋 전 및 병합 후 훅

코드 스타일 검사를 위한 커밋 전 훅과 알림을 위한 병합 후 훅의 실용적인 예를 구현하세요.

레슨 2/412개 단계

커밋 전 및 병합 후 훅은(는) CoddyKit의 무료 Git & GitHub Professional Workflow 강의입니다. 이것은 4개 중 2번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Git & GitHub Professional Workflow 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Git & GitHub Professional Workflow 강의에는 총 4개의 강의가 포함되어 있습니다.

실용적인 Git 훅 소개

이전 레슨에서는 Git 훅과 여러 유형에 대해 배웠습니다. 이제 직접 활용해 보겠습니다!

강력한 두 훅인 커밋 전과 병합 후를 구현해 보겠습니다. 이 훅을 사용하면 커밋 전에 검사를 자동으로 실행하고 병합 후에 작업을 수행할 수 있습니다.

커밋 전 훅: 품질 관문

pre-commit 훅은 커밋 작업 전에 실행되지만, git add를 사용하여 변경 사항을 스테이징한 후에 실행됩니다.

  • 코드 품질과 스타일을 강제하는 데 적합합니다.
  • 린터, 스타일 검사기 또는 기본 단위 테스트를 실행하는 데 사용할 수 있습니다.
  • 스크립트가 0이 아닌 상태로 종료되면 커밋이 자동으로 중단됩니다.

이를 통해 품질이 높고 규정을 준수하는 코드만 저장소에 들어오도록 할 수 있습니다.

커밋 전 훅 설정하기

pre-commit 훅을 만들려면 프로젝트의 .git/hooks/ 디렉터리 안에 pre-commit이라는 실행 가능한 파일을 만들어야 합니다.

Git은 .sample 확장자를 가진 예제 훅을 제공합니다. 이 확장자를 제거하고 사용자 지정 스크립트를 추가하십시오.

다음 명령으로 파일을 실행 가능하게 만드는 것도 잊지 마십시오: chmod +x .git/hooks/pre-commit

예제: TODO 커밋 방지하기

아직 "TODO"라는 단어가 들어 있는 파일을 커밋하지 못하게 하는 간단한 pre-commit 훅을 만들어 보겠습니다. 코드에 완료되지 않은 작업이 남지 않도록 하는 일반적인 방법입니다.

스크립트는 스테이징된 모든 파일에서 이 키워드를 검사합니다. 발견되면 커밋을 중지합니다.

커밋 전 훅: TODO 금지!

다음은 .git/hooks/pre-commit 파일에 사용할 수 있는 간단한 셸 스크립트입니다. 스테이징된 .txt 파일에서 "TODO"라는 단어를 검사합니다.

단계:

  1. .git/hooks/pre-commit 만들기
  2. 이 코드 붙여넣기
  3. chmod +x .git/hooks/pre-commit 실행하기
#!/bin/sh

# Check staged .txt files for "TODO"
for file in $(git diff --cached --name-only --diff-filter=ACM | grep '\.txt$'); do
  if grep -q "TODO" "$file"; then
    echo "ERROR: Found 'TODO' in staged file: $file"
    echo "Please remove TODOs before committing."
    exit 1
  fi
done

exit 0

커밋 전 훅 테스트하기

이 훅을 테스트하려면 먼저 파일(예: test.txt)을 만들고 그 안에 "TODO: Finish this"를 추가하십시오. 그런 다음 커밋을 시도하십시오.

git add test.txt
git commit -m "Add test file"

커밋이 중단되고 훅에서 보낸 오류 메시지가 표시됩니다. test.txt에서 "TODO"를 제거하면 커밋이 성공합니다!

병합 후: 병합 작업 자동화하기

post-merge 훅은 git merge 명령이 성공적으로 완료된 후 자동으로 실행됩니다.

  • 코드를 결합한 후 수행해야 하는 통합 작업에 유용합니다.
  • 예를 들어 팀원에게 알림 보내기, 프로젝트 의존성 업데이트하기(예: npm install), 빌드 스크립트 실행하기 등이 있습니다.
  • 커밋 전 훅과 달리 이 훅은 병합 결과에 영향을 주지 않습니다.

병합 후 프로세스를 자동화하는 훌륭한 방법입니다.

병합 후 훅 설정하기

pre-commit과 마찬가지로 .git/hooks/ 디렉터리 안에 post-merge라는 파일을 만듭니다.

다시 한 번 파일이 실행 가능한지 확인하십시오.

chmod +x .git/hooks/post-merge

그러면 저장소에서 병합이 완료될 때마다 이 스크립트가 실행됩니다.

예제: 병합 완료 알림

방금 병합이 완료되었음을 알리는 메시지를 콘솔에 출력하는 간단한 post-merge 훅을 만들어 보겠습니다. 실제 상황에서는 이 훅으로 CI/CD 파이프라인을 실행하거나 채팅 애플리케이션에 알림을 보낼 수 있습니다.

병합 후 훅: 알림

다음은 .git/hooks/post-merge 파일에 사용할 수 있는 간단한 셸 스크립트입니다. 완료 메시지를 출력합니다.

단계:

  1. .git/hooks/post-merge 만들기
  2. 이 코드 붙여넣기
  3. chmod +x .git/hooks/post-merge 실행하기
#!/bin/sh

# This hook runs after a merge operation.
echo "--- Post-merge hook triggered ---"
echo "A merge has just completed in your repository."
echo "You might want to run 'npm install' or 'bundle install' now."
echo "---------------------------------"

exit 0

훅 확인: 커밋 전과 병합 후

다음 작업 중 일반적으로 커밋 전 훅이 처리하는 작업은 무엇입니까?

복습: 실제로 사용하는 훅

잘하셨습니다! 이 레슨에서는 실용적인 Git 훅을 구현하는 방법을 배웠습니다.

  • 커밋 전 훅은 품질 관문 역할을 하며, 커밋 전에 린트 검사나 테스트 같은 검사를 실행합니다.
  • 병합 후 훅은 알림이나 의존성 업데이트처럼 병합 후에 수행할 작업을 자동화합니다.

이러한 훅은 표준을 강제하고 Git 저장소의 작업 흐름을 자동화하는 강력한 도구입니다. 다른 훅 유형도 계속 살펴보며 Git 사용 환경을 더욱 세밀하게 설정해 보십시오!

무료로 시작

AI 튜터와 함께 Git & GitHub Professional Workflow을(를) 배우세요 — 무료

브라우저에서 실제 코드를 작성하고 실행하며, 24/7 AI 튜터로부터 즉각적인 도움을 받고, 웹이나 앱에서 중단한 부분부터 계속 학습하세요.

코스
12
레슨
48

자주 묻는 질문

“커밋 전 및 병합 후 훅” 강의는 무료인가요?

네 — “커밋 전 및 병합 후 훅” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Git & GitHub Professional Workflow 강의 전체를 잠금 해제할 수 있습니다. Git & GitHub Professional Workflow 강의에는 총 4개의 강의가 포함되어 있습니다.

“커밋 전 및 병합 후 훅”에서 뭘 배우나요?

코드 스타일 검사를 위한 커밋 전 훅과 알림을 위한 병합 후 훅의 실용적인 예를 구현하세요. 브라우저에서 직접 실행하는 실습 코드로 Git & GitHub Professional Workflow을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

Git & GitHub Professional Workflow을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 Git & GitHub Professional Workflow은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 2번째 강의입니다.

“커밋 전 및 병합 후 훅” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 Git & GitHub Professional Workflow 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 Git & GitHub Professional Workflow 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. Git 훅 이해하기
  2. 커밋 전 및 병합 후 훅
  3. Git 구성 사용자 지정
  4. Husky로 훅 공유하기
← Git & GitHub Professional Workflow(으)로 돌아가기