aydin-hassan / php-git-hooks
一些简单的git钩子,用于运行各种PHP分析工具,包括PHPUnit
0.1.0-beta3
2014-01-23 16:10 UTC
This package is auto-updated.
Last update: 2024-09-12 20:41:33 UTC
README
此项目包含一些简单的脚本,用于在允许提交之前运行单元测试和静态分析工具。
目前,该工具将运行以下内容:
- PHPUnit
- PHP复制粘贴检测器
- PHP代码嗅探器
工具将只在修改的文件上运行phpcs,而phpcpd将对所有文件运行。如果项目根目录中存在phpunit.xml或phpunit.xml.dist文件,将运行PHPUnit。
PHP代码嗅探器将使用ps2编码标准运行,并将忽略警告(例如行限制)
此脚本将首先在项目的vendor/bin
目录中查找二进制文件,然后回退到~/.composer/vendor/bin
,因此请确保使用composer安装了工具。
有关编码标准,请参阅PHP-FIG。
安装工具
composer global require 'phpunit/phpunit:3.7.*'
composer global require 'squizlabs/php_codesniffer:1.5.1'
composer global require 'sebastian/phpcpd=2.0.0'
安装钩子
composer global require 'aydin-hassan/php-git-hooks:0.1.0-beta3'
cd ~/.composer/vendor/aydin-hassan/php-git-hooks
./install.sh
如果您有任何现有的仓库,您应该在仓库根目录中运行git init
以启用其中的钩子。所有新仓库将继承钩子。
完成
每次您从任何新克隆/创建的仓库提交内容时,都会执行这些检查!
待办事项
- 确定如何执行全局钩子,如果已定义本地仓库钩子