GIT 후크 관리를위한 다른 많은 도구 및 작곡가 플러그인입니다. 그러나 githooks는 다음을 제공합니다.
githooks tool name-of-the-tool 만 사용하여 개발자를 QA 도구를 실행하는 방법에서 멀리 떨어져 있습니다.또한 하이브리드 프로젝트가있는 경우 Typicode/Husky와 같은 JavaScript 유효성 검사 도구와 함께 사용할 수 있습니다.
composer require --dev wtyd/githooks 참고 : PHP <8.1의 경우 composer.json 의 scripts 섹션에 다음 post-update-cmd 이벤트를 추가해야합니다.
"scripts" : {
"post-update-cmd" : [
" Wtyd \ GitHooks \ Utils \ ComposerUpdater::phpOldVersions "
]
} 그런 다음 composer update wtyd/githooks 실행하십시오.
버전 2.3.0까지 사용 된 방법은 PHP72 Orminorupdate 이지만 더 이상 사용되지 않았으며 버전 3.0.0에서 제거됩니다.
또한 post-install-cm 이벤트에 추가하여 나머지 프로젝트 개발자가 빌드에 문제가 없도록 편리합니다.
"scripts" : {
"post-update-cmd" : " Wtyd \ GitHooks \ Utils \ ComposerUpdater::phpOldVersions " ,
"post-install-cmd" : " Wtyd \ GitHooks \ Utils \ ComposerUpdater::phpOldVersions "
}githooks conf:init 로 Githooks를 초기화하십시오. 이 명령은 루트 경로 ( githooks.yml )에서 구성 파일을 만듭니다. githooks hook 실행하십시오. .git/hooks 디렉토리의 사전 커밋 이벤트에서 githooks를 시작한 스크립트를 복사합니다. 또한 githooks hook otherHook MyScriptFile.php 사용자 정의 스크립트로 모든 후크를 설정할 수 있습니다. 자세한 내용은 위키를 참조하십시오. 자동으로 구성되도록 composer.json 파일 ( scripts Section)의 post-update-cmd 및 post-install-cmd 이벤트에서 명령을 구성 할 수 있습니다.
"scripts" : {
"post-update-cmd" : [
" vendor/bin/githooks hook " // or "vendor/bin/githooks hook pre-commit MyScriptFile.php"
],
"post-install-cmd" : [
" vendor/bin/githooks hook "
]
}커밋하면 구성된 모든 코드 확인 도구가 자동으로 시작됩니다. 코드가 모든 수표를 통과하면 githooks를 사용하면 커밋 할 수 있습니다. 그렇지 않은 경우 코드를 수정하고 다시 시도해야합니다.
원할 때마다 githooks를 실행할 수도 있습니다. 모든 도구는 동시에 또는 하나씩 다음과 같습니다.
githooks tool all # Run all tools
githooks tool phpcs # Run only phpcs현재 지원되는 도구는 다음과 같습니다.
그러나 모든 git 훅에서 자신의 스크립트를 설정할 수 있습니다.
githooks.yml 파일은 세 부분으로 분할됩니다.
execution 플래그는 Githooks가 실행되는 방법을 표시합니다.
full (기본 옵션) : 항상 각 도구에 대해 설정된 모든 경로에 대해 설정된 모든 도구를 실행합니다. 예를 들어, src 및 app 디렉토리에서 실행용 PHPC를 설정했습니다. 커밋에는 database 디렉토리의 수정 된 파일 만 포함됩니다. PHPC는 이러한 디렉토리의 파일이 수정되지 않더라도 src 및 app 디렉토리를 확인합니다.fast :이 옵션은 Commit에서 수정 된 파일에 대해서만 도구를 실행합니다.paths 를 덮어 써서 수정 된 파일에 대해서만 실행되도록 githooks.yml 또는 eath 도구의 구성 파일에서 도구 제외를 설정해야합니다. 여러 프로세스에서 동시에 여러 도구를 실행하십시오 ( tool all Command). 프로세스의 기본 수는 1입니다.
그것은 githooks가 실행할 도구의 이름을 가진 배열입니다. 도구의 이름은 실행 파일입니다. 모든 도구를 실행하려면 Tools 키는 다음과 같습니다.
Tools :
- phpstan
- security-checker
- parallel-lint
- phpcs
- phpcbf
- phpmd
- phpcpd도구의 순서는 도구가 실행될 순서입니다.
다음 단계에서는 도구 키와 동일한 이름으로 도구를 구성해야합니다. 예를 들어, SET PHPCS :
phpcs :
executablePath : vendor/bin/phpcs
paths : [src, tests]
ignore : [vendor]
standard : ' PSR12 '사용 가능한 모든 옵션은 위키에 있습니다.
다른 사람들의 기여는 대단히 감사 할 것입니다! 풀 요청/문제를 보냅니다. Wiki Section에서 모든 단계를 확인하십시오. 감사해요!
MIT 라이센스 (MIT). 자세한 내용은 라이센스 파일을 참조하십시오.