Git Hooks를 사용하여 테스트 및/또는 Linter 실행
간단한 실행 방법을 설정하려는 경우
에 대한
pre-commit
후크의 각 커밋 전 코드Javascript 프로젝트, 이것이 내가 한 방법입니다.
설정
후크는 실제로 git 이외의 다른 것에 의존하지 않지만
이 프로젝트에서
vite
및 yarn
를 사용하고 있습니다.모든 빌드 도구와 동일하게 작동합니다.
npm
를 사용하는 경우 yarn [command]
를 npm run [command]
로 바꾸십시오.후크가 작동하려면 다음 코드를 작성해야 합니다.
{YOUR_PROJECT_ROOT}/.git/hooks/pre-commit
.따라서 시작하려면 다음 중 하나를
프로젝트 루트의 터미널:
vim의 경우:
vim .git/hooks/pre-commit
나노용:
nano .git/hooks/pre-commit
VS 코드의 경우:
code .git/hooks/pre-commit
또는 원하는 다른 방식으로 파일을 만들고 편집합니다.
암호
#!/bin/bash
yarn lint
linting_result=$?
if [[ $linting_result -ne 0 ]]
then
echo "LINT FAILED!"
echo 'Please fix linting problems before committing.'
exit 1
fi
yarn test
test_result=$?
if [[ $test_result -ne 0 ]]
then
echo "TESTS FAILED!"
echo 'Please make sure tests pass before committing.'
exit 1
fi
yarn test
및 yarn lint
명령은 다음과 정확히 동일하게 작동합니다.그들은 내 프로젝트의 루트에 있는 명령줄에서 호출될 때 수행합니다.
종료 코드를 얻고 여기에서 0인지 확인합니다.
linting_result=$?
if [[ $linting_result -ne 0 ]]
0(
-ne 0
)이 아니면 메시지를 에코합니다.0이 아닌 다른 종료 코드로 bash 코드를 종료합니다.
then
echo "LINT FAILED!"
echo 'Please fix linting problems before committing.'
exit 1
fi
테스트나 linter가 실패하면 종료됩니다.
1의 코드로. 그러나 다른 코드로 종료하면
이유를 알고 싶습니다. 0이 아닌 값으로 종료하고
커밋을 진행하십시오.
다음 단계
지금 해야 할 일은
chmod +x .git/hooks/pre-commit
를 실행하여 코드를 실행 가능하게 만드는 것입니다.코드는 모든 커밋에서 실행됩니다.
documentation을 확인하고 추가
당신이 좋아하는 다른 후크. 푸시에서도 동일한 코드를 실행합니다.
예를 들어
pre-push
후크
Reference
이 문제에 관하여(Git Hooks를 사용하여 테스트 및/또는 Linter 실행), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/ethancarlsson/using-git-hooks-to-run-your-tests-andor-linter-2e34텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)