jeleb-smile / php-git-hooks
PHP项目的Git钩子。
Requires
- php: >=5.6
- beberlei/assert: ^2.5
- bruli/event-bus-bundle: ~0.2
- bruli/ignore-files: ~1.0
- bruli/php-value-objects: ~0.1
- fiunchinho/phpunit-randomizer: ~2.0
- friendsofphp/php-cs-fixer: ^1.11
- mockery/mockery: ~0.9
- mybuilder/phpunit-accelerator: ^1.1
- phpmd/phpmd: ~2.2
- phpunit/php-code-coverage: ~3.0|~4.0
- phpunit/phpunit: ~5.0
- phpunit/phpunit-mock-objects: ~3.0
- seld/jsonlint: 1.3.*
- squizlabs/php_codesniffer: ~2.3
- symfony/config: ~2.7|~3.0
- symfony/dependency-injection: ~2.7|~3.0
- symfony/yaml: ~2.7|~3.0
Requires (Dev)
- composer/composer: ^1.0@dev
- fzaninotto/faker: ^1.6
- v4.11.1
- v4.11
- v4.10
- v4.9
- v4.8.1
- v4.8
- v4.7.1
- v4.7
- v4.6.1
- v4.6
- v4.5.1
- v4.5
- v4.4
- v4.3
- v4.2
- v4.1.6
- v4.1.5
- v4.1.4
- v4.1.3
- v4.1.2
- v4.1.1
- v4.1
- v4.0
- v3.1.0
- v3.0.0
- dev-master / 2.x-dev
- v2.5.10
- v2.5.9
- v2.5.8
- v2.5.7
- v2.5.6
- v2.5.5
- v2.5.4
- v2.5.3
- v2.5.2
- v2.5.1
- v2.5.0
- v2.4.1
- v2.4.0
- v2.3.0
- v2.2.0
- v2.1.1
- v2.1.0
- v2.0.1
- v2.0.0
- v1.3.1
- v1.3.0
- v1.2.1
- v1.2.0
- 1.2-alpha
- 1.1-alpha
- 1.0-alpha
This package is not auto-updated.
Last update: 2024-09-28 20:14:44 UTC
README
PHP项目的Git钩子。
基于git钩子脚本的PHP项目库。
安装
步骤 1: Composer
您必须将以下行添加到composer.json文件中,以便与Symfony 3.0一起使用
{
"require-dev": {
"bruli/php-git-hooks": "~3.0"
}
}
对于Symfony 2.X版本,您可以使用"~2.0"。
或者,您可以在控制台中编写
$ composer require bruli/php-git-hooks --dev
如果您没有composer,您需要下载二进制文件并运行它
wget https://composer.php.ac.cn/composer.phar
# or
curl -O https://composer.php.ac.cn/composer.phar
php composer.phar install
步骤 2: 配置
Composer配置。
下载所有仓库后,composer会询问您关于配置的问题。
Symfony2项目的Composer配置。
在Symfony2项目中,您需要在您的composer.json中添加以下行
"scripts": { "post-install-cmd": [ ...other lines... "PhpGitHooks\\Application\\Composer\\ConfiguratorScript::buildConfig" ], "post-update-cmd": [ ...other lines... "PhpGitHooks\\Application\\Composer\\ConfiguratorScript::buildConfig" ]
注意:使用2.X版本需要symfony 2.7版本。
Bin目录配置。
如果您的项目没有"bin"目录,您可以在您的composer.json文件中添加以下内容。
"config": { "bin-dir": "bin" }
注意:对于Symfony项目不是必需的。
git钩子的手动配置文件。
您可以通过创建一个带有...的php-git-hooks.yml文件来配置php-git-hooks
pre-commit: enabled: true execute: php-cs-fixer: enabled: true levels: psr0: true psr1: true psr2: true symfony: true phpunit: enabled: true random-mode: true phplint: true phpcs: enabled: true standard: PSR2 phpmd: true composer: true commit-msg: enabled: true regular-expression: '#[0-9]{2,7}'
... 或者您可以从vendor/bruli/php-git-hooks复制php-git-hooks.yml.sample
从v1.3.*版本更新
php-git-hooks.yml文件中的Php-cs-fixer配置与2.0版本不兼容。您应该删除php-cs-fixer条目并执行"composer install"。
更新最简单的方法是删除php-git-hooks.yml并执行"composer install"。您将再次看到所有配置问题。
phpunit的配置文件。
如果您想使用phpunit工具,您必须在项目根目录中创建一个phpunit.xml.dist。或者您可以从vendor/bruli/php-git-hooks/phpunit.xml.dist复制到项目根目录。
phpmd的配置文件。
与phpunit相同。您必须在项目根目录中创建一个PmdRules.xml,或者从php-git-hook目录中复制。
步骤 3: 启用钩子。
启用钩子最简单的方法是将钩子文件复制到您的.git/hooks目录中。
#对于pre-commit钩子
您可以使用composer或手动执行来启用此钩子
$cp vendor/bruli/php-git-hooks/hooks/pre-commit .git/hooks
#对于commit-msg钩子
$cp vendor/bruli/php-git-hooks/hooks/commit-msg .git/hooks
执行。
####有效的pre-commit.
####失败的pre-commit. 
鸣谢
许可证
php-git-hooks在MIT许可证下发布。有关详细信息,请参阅捆绑的LICENSE文件。
