Git 후크 소개

완료됨

지속적인 업데이트를 위해서는 상당한 수준의 자동화가 필요합니다. 고품질 코드베이스가 없는 경우 지속적으로 업데이트할 수 없습니다. 자동화가 구현되면 git도 잘 작동합니다.

코드베이스에서 대부분의 검사를 자동화할 수 있습니다. 로컬 리포지토리에 코드를 커밋하기 전에 원격 상태로 둡니다.

Git 후크

Git 후크는 특정 Git 수명 주기 이벤트 전후에 코드를 실행할 수 있도록 하는 메커니즘입니다.

예를 들어 커밋 메시지 구조가 권장된 형식을 따르는지 확인하기 위해 commit-msg 이벤트에 후크할 수 있습니다.

후크는 셸, PowerShell, Python 또는 기타 스크립트를 비롯한 임의의 실행 코드일 수 있습니다. 또는 이진 실행 파일일 수 있습니다. 어떤 경우도 가능합니다.

유일한 조건은 후크가 리포지토리 루트의 git/hooks 폴더에 저장되어야 한다는 것입니다. 또한 관련 이벤트(Git 2.x)와 일치하도록 이름을 지정해야 합니다.

  • applypatch-msg
  • pre-applypatch
  • post-applypatch
  • pre-commit
  • prepare-commit-msg
  • commit-msg
  • post-commit
  • pre-rebase
  • post-checkout
  • post-merge
  • pre-receive
  • update
  • post-receive
  • post-update
  • pre-auto-gc
  • post-rewrite
  • pre-push

Git 후크 사용에 대한 실용적인 사용 사례

Git 후크는 호출된 특정 이벤트 형식에 대해 스크립트를 실행하므로 Git 후크로 많은 작업을 수행할 수 있습니다.

후크를 사용하여 정책을 적용하고, 일관성을 유지하고, 환경을 제어할 수 있는 몇 가지 예는 다음과 같습니다.

  • 병합을 위한 사전 조건 적용
  • 커밋 메시지에서 작업 항목 ID 연결 확인
  • 사용자 및 팀에서 잘못된 코드를 커밋하지 못하도록 방지
  • 팀의 채팅방(Teams, Slack, HipChat 등)으로 알림 보내기

다음 단원에서는 Git 후크를 구현하는 방법을 확인합니다.