evolution7 / qa-tools
一组用于CI集成和多种Git钩子的代码质量工具
1.0.3
2014-12-09 06:45 UTC
Requires
- fabpot/php-cs-fixer: 1.2.*
- mayflower/php-codebrowser: ~1.1
- mockery/mockery: 0.9.*
- pdepend/pdepend: 1.*
- phpdocumentor/phpdocumentor: 2.*
- phploc/phploc: *
- phpmd/phpmd: 1.4.*
- phpunit/phpunit: 4.*
- sebastian/phpcpd: *
- squizlabs/php_codesniffer: *
This package is not auto-updated.
Last update: 2024-09-10 02:44:27 UTC
README
这是一个通过Composer包含所有QA工具的单个仓库。如果您将其作为require-dev
需求安装,您将在开发和CI机器上访问它,但在部署到生产环境时不需要安装所有依赖。
安装
如上所述,首选方式是使用以下方式在require-dev中安装:
composer require --dev "evolution7/qa-tools=1.*"
包含的QA工具
CI示例
在ci-examples目录中,您将找到这些工具在持续集成设置中的使用示例。
Git钩子
此外,这个仓库还包含了一套用于与git-hooks工具一起使用的git钩子。此工具允许您轻松地在项目中共享git钩子,并对其进行整洁的组织。
使用方法
包含这些钩子的最简单方法是首先按照项目页面上的说明安装git-hooks工具。然后,您可以从项目的根目录创建一个符号链接ln -s vendor/evolution7/qa-tools/git_hooks
,或者创建自己的目录并仅复制/符号链接您希望使用的钩子。
钩子
以下钩子存在
- post-merge/01-update-dependencies - 在拉取后运行git composer install命令和git submodule update。
- post-merge/11-grunt-build - 在拉取后更新npm/bower并运行grunt build。这会在这样做之前检查是否存在实际的Gruntfile。
- post-merge/21-build-symfony-model - 在拉取后构建Symfony1.x类。
- post-merge/91-clear-cache - 在拉取后清除Symfony1缓存。
- pre-commit/00-protect-master-staging - 阻止向master和staging分支提交。
- pre-commit/01-composer - 在提交之前运行git composer validate命令。
- pre-commit/11-phplint - 在提交之前运行lint检查。
贡献?
请随意为此仓库进行分叉以进行自定义,或者创建拉取请求以包含您首选的QA工具、Git钩子,甚至是CI示例。