본문 바로가기
개발/게임) 개발관련

Git) Git Hooks(깃 훅)

by 테샤르 2023. 11. 17.

 Git Hook(깃 훅)

Git Hooks 는 Git에서 특정 프로세스의 지점에서 실행할 수 있는 스크립트를 말한다.

 

Git Hooks는 대체적으로 서버 / 클라이언트 2가지 유형이 존재한다.

Git Hooks 관련된파일은 .git/hooks 디렉토리에 저장된다고 한다.

 

<.git에 포함되어있는 여러 설정을 보는 방법 >

 

 

 

반응형

 

<hooks 내부>

 

 

내부 파일을 보면 대략 다음과 같다.

< Hooks 파일 설명 >

이름 설명
applypatch-msg 패치 적용 프로세스 중에 커밋 메시지를 수정하기 위해 호출됨
commit-msg 커밋 메시지를 입력한 후 커밋이 생성되기 전에 호출된다.
커밋 메시지를 수정 할 수 있다.
fsmonitor-watchman 대규모 저장소에서 작업 속도를 높이기 위해서 설계된 fsmonitor git 기능과 연관된 파일
post-update post-receive와 비슷하지만 모든 참조가 업데이트 된 이후에 호출된다.
pre-applypatch 패치 적용하기 전에 호출된다.
pre-commit 커밋을 생성하기 전에 호출된다,
pre-merge-commit 머지 커밋을 생성하기 전에 호출된다.
pre-push 푸시를 하기 전에 호출된다.
pre-rebase 리베이스를 하기전에 호출되는 훅으로 리베이스 전에 추가적인 작업이나 체크를 할 수 있다.
pre-receive 리모트 저장소로 푸시를 받기 전에 호출된다.
prepare-commit-mgs 커밋 메시지를 작성하기 전에 실행되는 훅으로 자동으로 커밋 메시지를 생성하거나 메시지를 수정하는 작업이 가능하다.
push-to-checkout 브런치를 변경하는 푸시를 수행할 때 실행되는 훅, 푸시 시 특정 브랜치로의 변경을 제한할 수 있다.
update 리모트 저장소의 레퍼런스(브랜치 등) 업데이트가 될때 실행되는 훅으로 업데이트 전에 특정 규칙을 적용하거나 거부가 가능하다.
   
post-commit 커밋이 생성 된 이후 실행된다. 알림 보내기 혹은 다른 작업 트리거와 같은 작업에 사용 가능하다.

 

 

 

Git hooks : [링크]

 

Git - Git Hooks

여기서 한가지 알아둘 점은 저장소를 Clone 해도 클라이언트 훅은 복사되지 않는다는 점이다. 만든 정책이 반드시 적용되도록 하려면 서버 훅을 이용해야만 하며 작성은 정책 구현하기 부분을 참

git-scm.com

 

★☆☆☆☆

 

반응형

댓글