curl https://squizlabs.github.io/PHP_CodeSniffer/phpcs.phar -L > /usr/local/bin/phpcs
chmod +x /usr/local/bin/phpcs
see more: https://github.com/squizlabs/PHP_CodeSniffer
vi .git/hooks/pre-commit
#!/bin/sh
# 注意:hook文件需要加可执行权限
# 需要检查的应用配置,如果为空则直接为 /
APP_NAMES=("/item" "/quality")
PROJECT=`php -r "echo dirname(dirname(dirname(realpath('$0'))));"`
dophpcs() {
APP_PATH=$PROJECT$1
echo "切换目录:" $APP_PATH
cd $APP_PATH
# CMD="./vendor/bin/phpcs --standard=psr2 app/"
CMD="phpcs --standard=psr2 app/"
echo "#### phpcs $1 开始 ####"
echo $CMD
# 增加文件是否存在的判断 防止 $APP_NAMES 配置错误
$CMD
if [ $? != 0 ]
then
exit 1
fi
echo "####phpcs $1 通过"
echo "\n"
}
for APP_NAME in ${APP_NAMES[*]}
do
dophpcs $APP_NAME
done
exit $?