NodeJs에서 프로처럼 커밋하기: 후크
무엇과 왜 Git hooks?
Git 후크는 Git이 커밋, 푸시 및 수신과 같은 이벤트 전후에 로컬에서 실행하는 스크립트입니다.
이러한 후크는 bash 스크립팅을 통해 완전히 프로그래밍할 수 있습니다. 수행할 수 있는 작업의 예:
이를 통해 우리는 정확한 시간에 정확한 일을 커밋하고 있는지 확인할 수 있습니다. 잊을 수 있는 수동 프로세스로 작업을 수행하는 정신적 부하 때문에 코드를 위반하지 않습니다.
시작하는 방법
허스키 추가
Husky은
.husky/
디렉토리의 후크에 대한 개별 파일을 사용하여 구성된 JavaScript를 사용하여 Git 후크를 허용하는 도구입니다.husky를 설치하는 가장 빠른 방법은 husky로 프로젝트를 빠르게 초기화하는 일회성 명령인
husky-init
를 사용하는 것입니다.npx husky-init && npm install # npm
npx husky-init && yarn # Yarn 1
yarn dlx husky-init --yarn2 && yarn # Yarn 2+
pnpm dlx husky-init && pnpm install # pnpm
허스키를 설정하고, package.json을 수정하고, 편집할 수 있는 샘플 사전 커밋 후크를 생성합니다. 기본적으로 커밋하면 테스트가 실행됩니다.
다른 후크를 추가하려면
husky add
를 사용하십시오.husky-init
를 사용하는 것이 불편하면 다른 옵션here을 찾을 수 있습니다.린트 스테이지 추가
Husky는 매우 유용하지만 기본적으로 git로 실행되며 커밋하려는 파일뿐만 아니라 모든 파일에 대한 bash 스크립트의 명령에 초점을 맞추지 않습니다.
Lint Staged이 이 문제를 해결하는 것으로 보입니다. 패턴과 일치하는 준비된 git 파일에 대해 프로세스를 실행할 수 있습니다.
로컬 프로젝트에 추가하여
lint-staged
를 설치합니다.npm install lint-staged --save-dev
yarn add lint-staged -D
package.json에서 스크립트(
"lint-staged": "lint-staged",
)로 추가하고 pre-commit
후크를 통해 참조하십시오. Husky를 사용하는 경우 다음 콘텐츠와 함께 .husky/pre-commit
에서 찾을 수 있습니다.#!/bin/sh
. "$(dirname "$0")/_/husky.sh"
yarn lint-staged
configure lint-staged에는 여러 가지 방법이 있습니다. 그 중 하나는 프로젝트 루트 폴더에
lint-staged.config.js
파일이 있습니다. 이 파일에서 어떤 유형의 파일에 대해 어떤 프로세스를 실행하고 싶은지 표현할 수 있습니다. 예를 들어:module.exports = {
'*.{ts,tsx}': [() => 'yarn tsc:check', 'yarn format', 'yarn lint:fix', 'yarn test', 'git add .'],
};
이전 스니핑은 현재 커밋에 고정된 스테이지 파일을 추가하기 전에 컴파일러 검사, 서식 지정, 린팅 및 테스트를 실행합니다.
결론
이 두 도구를 사용하여 이제 CI/CD 시스템과 유사한 검사를 통과하는 코드를 푸시할 것입니다.
Reference
이 문제에 관하여(NodeJs에서 프로처럼 커밋하기: 후크), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/kanekotic/commiting-like-a-pro-in-nodejs-the-hooks-54j9텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)