Repolode
evilmartians

evilmartians/lefthook

Go로 작성된 빠른 Git hooks 관리 도구로, Node.js, Ruby, Python 및 기타 프로젝트에서 pre-commit 등의 hook 명령을 병렬로 실행합니다.

대체할 수 있는 제품:Husky

스타
8,931
포크
325
열린 이슈
91
마지막 커밋
어제

어떤 프로젝트인가요?

Lefthook은 프로젝트의 Git hooks를 단일 lefthook.yml 파일로 관리합니다. pre-commit, pre-push, commit-msg 같은 hook의 명령을 정의한 다음, lefthook install을 한 번 실행해 저장소에 연결하면 됩니다. 의존성이 없는 단일 바이너리로 배포되며 npm, gem, pipx, Go, Homebrew, apt, winget 및 기타 패키지 관리자를 통해서도 설치할 수 있습니다.

각 hook은 작업을 병렬로 실행하고 glob 패턴, 제외 조건 또는 staged 파일 목록을 사용해 전달할 파일을 필터링할 수 있습니다. 작업을 태그로 그룹화하고, root를 통해 하위 디렉터리에서 실행하거나 스크립트 파일을 실행할 수 있으며 docker run 같은 runner를 통해 실행할 수도 있습니다. 로컬 override 파일(lefthook-local.yml)을 사용하면 개별 개발자가 공유 설정을 건드리지 않고 작업을 건너뛰거나 변경할 수 있습니다.

hook 외에도 설정에 정의된 명령을 lefthook run으로 직접 실행할 수 있어, 여러 사람이 함께 사용하는 fixer나 linter를 실행할 때 유용합니다. 출력은 실행 및 실패 메시지만 표시하도록 줄일 수 있습니다.

핵심 기능

  • 01pre-commit 및 pre-push 검사를 단축할 수 있도록 hook 명령을 병렬로 실행합니다.
  • 02glob 패턴, 제외 조건, staged 파일 목록을 사용해 작업별로 파일을 필터링합니다.
  • 03작업을 태그로 그룹화하고 hook별로 포함하거나 제외할 수 있습니다.
  • 04하위 디렉터리, 스크립트 파일 및 Docker 컨테이너에서 작업을 실행할 수 있습니다.
  • 05개발자가 로컬 설정 파일에 개인별 override를 저장할 수 있습니다.

활용 사례

  • 커밋할 때마다 staged 파일에 ESLint, Stylelint 또는 RuboCop을 실행합니다.
  • push 전에 의존성을 감사하거나 보안 검사를 실행합니다.
  • commit-msg 스크립트로 커밋 메시지 템플릿을 적용합니다.
  • lefthook run으로 필요할 때 실행할 수 있는 팀 공용 fixer 세트를 공유합니다.

빠른 시작

  1. 1

    npm을 사용해 lefthook을 개발 의존성으로 설치합니다

    npm install lefthook --save-dev
  2. 2

    lefthook.yml에서 훅을 구성합니다

  3. 3

    Git 프로젝트에 훅을 설치합니다

    lefthook install

사용 전 알아둘 점

  • 일부 설정 및 사용 세부 정보는 외부 문서 사이트에서만 확인할 수 있습니다.

토픽

자주 묻는 질문

lefthook은(는) 무엇인가요?
Go로 작성된 빠른 Git hooks 관리 도구로, Node.js, Ruby, Python 및 기타 프로젝트에서 pre-commit 등의 hook 명령을 병렬로 실행합니다. Lefthook은 프로젝트의 Git hooks를 단일 lefthook.yml 파일로 관리합니다. pre-commit, pre-push, commit-msg 같은 hook의 명령을 정의한 다음, lefthook install을 한 번 실행해 저장소에 연결하면 됩니다. 의존성이 없는 단일 바이너리로 배포되며 npm, gem, pipx, Go, Homebrew, apt, winget 및 기타 패키지 관리자를 통해서도 설치할 수 있습니다.
lefthook은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
lefthook은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
lefthook은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. lefthook의 마지막 커밋은 2026년 10월 21일입니다.
lefthook은(는) 어디에 사용할 수 있나요?
커밋할 때마다 staged 파일에 ESLint, Stylelint 또는 RuboCop을 실행합니다. push 전에 의존성을 감사하거나 보안 검사를 실행합니다. commit-msg 스크립트로 커밋 메시지 템플릿을 적용합니다. lefthook run으로 필요할 때 실행할 수 있는 팀 공용 fixer 세트를 공유합니다.
lefthook는 어떻게 설치하나요?
npm을 사용해 lefthook을 개발 의존성으로 설치합니다: npm install lefthook --save-dev lefthook.yml에서 훅을 구성합니다 Git 프로젝트에 훅을 설치합니다: lefthook install
lefthook은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/evilmartians/lefthook

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트