커밋 전에 포맷팅을 놓치고, 푸시 직전에 린트에서 멈춘다. 이 흐름이 반복되면 리뷰 전에 시간을 계속 잃는다.
Git Hook으로 정렬과 정적 검사를 자동화해 수작업 누락을 줄인다. 이번 구성은 lefthook으로 커밋 시점과 푸시 시점에 Biome을 실행한다.
목적
커밋 시점과 푸시 시점에 Biome 포맷팅과 린트를 자동 실행한다.
전제 조건
bun을 사용할 수 있어야 한다- 저장소 루트에서 작업해야 한다
도입 절차
- ADR(일본어)을 작성해 방침을 명문화한다
- 절차 메모를
ailog/에 작성한다 lefthook을 개발 의존성으로 추가한다lefthook.yml을 만들고pre-commit과pre-push에 포맷/린트를 설정한다package.json에prepare스크립트(lefthook install)를 추가한다bun run prepare로 Git Hook을 설치한다lefthook run pre-commit/lefthook run pre-push로 동작을 확인한다- 문제가 있으면 설정을 수정한다
- 도입이 끝나면
ailog/에 임시 블로그 글을 작성한다 - ADR을 다른 언어(en / de / fr / ko)로 번역한다
동작 확인 체크리스트
-
lefthook.yml이 존재하고pre-commit/pre-push가 정의되어 있다 -
bun run prepare가 성공한다 -
lefthook run pre-commit이 성공한다 -
lefthook run pre-push가 성공한다
실행 메모
pre-commit 은 staged 파일을 대상으로 biome format --write {staged_files} 와 biome check --write {staged_files} 를 실행한다.
pre-push 도 staged 파일을 대상으로 biome format --write {staged_files} 와 biome check --write {staged_files} 를 실행한다.
Git Hook 설정을 저장소에 두면 환경이 달라도 운영을 맞추기 쉽다. 리뷰 전에 불필요한 차이를 줄이고 싶다면, 먼저 여기부터 고정하는 편이 빠르다.
hsb.horse