nafigator / php-qa-hooks
Git hooks for PHP commits QA.
Installs: 6 833
Dependents: 0
Suggesters: 0
Security: 0
Stars: 5
Watchers: 4
Forks: 1
Language:Shell
Requires
README
PHP QA git hooks
Git hooks for PHP commits quality assurance
Requirements
- git
- bash
- PHP CLI
- Core utils
Features
- Customization by git config options
- Check for PHP syntax before commit
- Check for Git conflict markups before commit
- Warn about PHP dump functions (var_dump(), var_export(), print_r())
- Check PHP code style before push
- Run PHPUnit tests before push
- Colored output
Install via Composer
-
Install package:
composer require --dev nafigator/php-qa-hooks
-
Add extra section to composer.json:
"extra": { "scripts-dev": { "post-install-cmd": "vendor/nafigator/php-qa-hooks/src/hooks-install.sh" } }
-
Place phpcs.xml into root of your project.
NOTE: An example phpcs.xml file can be found in the PHP_CodeSniffer repository: phpcs.xml.dist
-
Run
composer install
.
Uninstall
-
Remove git config section
check.php
git config --remove-section check.php
-
Add extra section to composer.json:
"extra": { "scripts-dev": { "post-install-cmd": "vendor/nafigator/php-qa-hooks/src/hooks-uninstall.sh" } }
Commit and push your changes to repository. When uninstall script completes cleanup for all work copies, move to next step.
-
Remove package:
composer remove --dev nafigator/php-qa-hooks
-
Remove phpcs.xml from root ot your project.
Configuration
Example (colors off):
git config check.php.colors false
Available git config options:
check.php.colors [true|false]
check.php.conflicts [true|false]
check.php.dumps [true|false]
check.php.phpunit [true|false]
check.php.style [true|false]
check.php.syntax [true|false]
NOTE: PHPUnit disabled by default. You need to enable it manually.
Versioning
This software follows "Semantic Versioning" specifications. All function signatures declared as public API.
Read more on SemVer.org.