공부/Git
[pre-commit] local repository 사용하기
haejang
2023. 5. 8. 22:33
728x90
728x90
# Git Hook이란?
https://git-scm.com/docs/githooks
commit이나 push같은 이벤트 발생 시 동작
.git/hooks
폴더를 확인하면 여러 hook들에 대한 sample 파일들을 확인할 수 있다
# pre-commit이란?
위 hook들 중 pre-commit hook용 프레임워크이다
.pre-commit-config.yaml
파일을 구성하여 사용할 수 있다.
sample config는 아래와 같다.
$ pre-commit sample-config
# See https://pre-commit.com for more information
# See https://pre-commit.com/hooks.html for more hooks
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v3.2.0
hooks:
- id: trailing-whitespace
- id: end-of-file-fixer
- id: check-yaml
- id: check-added-large-files
add되어 staging 상태에 있는 file들에 대해 pre-commit에 명시된 코드들이 돌아간다고 생각하면 된다
lint, black, isort 등을 많이 사용한다
# pre-commit 설치 및 세팅 (MAC)
# pre-commit 설치
brew install pre-commit
# sample config 확인
pre-commit sample-config
pre-commit hook으로 사용할 수 있는 것들은 알아서 알아보자. docs에도 인터넷 여기저기에도 레퍼런스는 많다
나는 repo 내에 작성해둔 간단한 스크립트를 pre-commit으로 돌리고 싶었다
-> local repository를 사용하면 된다
repos:
- repo: local
hooks:
- id: test_script
name: test_script
entry: ./test_script.sh
language: script
types: [file]
pass_filenames: false
이렇게 하니까 된다
끝!
728x90
728x90