Git hooks는 Git 저장소에서 일어나는 특정 이벤트(예: 커밋하기 전, 푸시하기 전 등)에 대한 사용자 정의 작업을 실행할 수 있도록 하는 스크립트입니다. 이 스크립트는 Git 저장소의 .git/hooks 디렉토리에 저장됩니다.
본문에서는 pre-commit에 관한 Event를 추가합니다.
git init으로 초기화 한 후 .git/hooks 내부에 sample파일이 있는 것을 볼 수 있습니다.
pre-commit.sample파일이 아닌 pre-commit 파일을 추가합니다.
.txt 파일을 commit하려고 할 경우 커밋이 안 되도록 하는 내용을 추가했습니다.
원하는 결과는 아래와 같습니다.
stage에 있는 것 중에 txt 파일 있거나 수정 : commit 에러
else : commit ok
안 됩니다. 파일을 실행할 수 있는 권한이 없습니다.