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 후크를 구현하는 방법을 확인합니다.