refinery29 / php-cs-fixer-config
提供 friendsofphp/php-cs-fixer 的配置,用于 Refinery29。
这个包的官方仓库似乎已消失,因此该包已被冻结。
0.10.1
2017-05-29 12:26 UTC
Requires
- php: ^5.6 || ^7.0
- friendsofphp/php-cs-fixer: ^2.3.2
Requires (Dev)
- codeclimate/php-test-reporter: 0.4.4
- phpunit/phpunit: ^5.7.19
- refinery29/test-util: 0.11.2
- dev-master
- 0.10.1
- 0.10.0
- 0.9.6
- 0.9.5
- 0.9.4
- 0.9.3
- 0.9.2
- 0.9.1
- 0.9.0
- 0.8.2
- 0.8.1
- 0.8.0
- 0.7.3
- 0.7.2
- 0.7.1
- 0.7.0
- 0.6.15
- 0.6.14
- 0.6.13
- 0.6.12
- 0.6.11
- 0.6.10
- 0.6.9
- 0.6.8
- 0.6.7
- 0.6.6
- 0.6.5
- 0.6.4
- 0.6.3
- 0.6.2
- 0.6.1
- 0.6.0
- 0.5.5
- 0.5.4
- 0.5.3
- 0.5.2
- 0.5.1
- 0.5.0
- 0.4.20
- 0.4.19
- 0.4.18
- 0.4.17
- 0.4.16
- 0.4.15
- 0.4.14
- 0.4.13
- 0.4.12
- 0.4.11
- 0.4.10
- 0.4.9
- 0.4.8
- 0.4.7
- 0.4.6
- 0.4.5
- 0.4.4
- 0.4.3
- 0.4.2
- 0.4.1
- 0.4.0
- 0.3.7
- 0.3.6
- 0.3.5
- 0.3.4
- 0.3.3
- 0.3.2
- 0.3.1
- 0.3.0
- 0.2.9
- 0.2.8
- 0.2.7
- 0.2.6
- 0.2.5
- 0.2.4
- 0.2.3
- 0.2.2
- 0.2.1
- 0.2.0
- 0.1.5
- 0.1.4
- 0.1.3
- 0.1.2
- 0.1.1
- 0.1.0
This package is not auto-updated.
Last update: 2024-06-08 16:10:26 UTC
README
此仓库提供 friendsofphp/php-cs-fixer
的配置,我们使用它来验证和强制执行 Refinery29 内部 PHP 代码的单一编码标准。
安装
运行
$ composer require --dev refinery29/php-cs-fixer-config
使用
选择配置
以下配置可用
Refinery29\CS\Config\Php56
Refinery29\CS\Config\Php70
Refinery29\CS\Config\Php71
配置
在项目的根目录下创建一个 .php_cs
配置文件
<?php $config = new Refinery29\CS\Config\Php56(); $config->getFinder()->in(__DIR__); $cacheDir = getenv('TRAVIS') ? getenv('HOME') . '/.php-cs-fixer' : __DIR__; $config->setCacheFile($cacheDir . '/.php_cs.cache'); return $config;
💡 可选地,您可以指定一个要使用的头部注释,这将自动启用 header_comment
修复器
$header = <<<EOF Copyright (c) 2016 Refinery29, Inc. For the full copyright and license information, please view the LICENSE file that was distributed with this source code. EOF; $config = new Refinery29\CS\Config\Php56($header);
Git
将 .php_cs.cache
(这是由 php-cs-fixer
创建的缓存文件)添加到 .gitignore
vendor/
.php_cs.cache
Travis
更新您的 .travis.yml
以缓存 php_cs.cache
文件
cache: directories: - $HOME/.php-cs-fixer
然后在 script
部分运行 php-cs-fixer
script: - vendor/bin/php-cs-fixer fix --config=.php_cs --verbose --diff --dry-run
如果您只想在单个 PHP 版本上运行 php-cs-fixer
,请更新您的构建矩阵并使用条件
matrix: include: - php: 5.5 env: WITH_CS=true - php: 5.6 env: WITH_COVERAGE=true script: - if [[ "$WITH_CS" == "true" ]]; then vendor/bin/php-cs-fixer fix --config=.php_cs --verbose --diff --dry-run; fi
Makefile
创建一个带有 composer
(因为我们很懒惰)和 cs
目标的 Makefile
composer: composer validate composer install cs: composer vendor/bin/php-cs-fixer fix --config=.php_cs --verbose --diff
修复问题
手动
如果您需要本地修复问题,只需运行
$ make cs
提交前钩子
您可以添加一个 pre-commit
钩子
$ touch .git/pre-commit && chmod +x .git/pre-commit
将以下内容粘贴到 .git/pre-commit
#!/usr/bin/env bash echo "pre commit hook start" CURRENT_DIRECTORY=`pwd` GIT_HOOKS_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" PROJECT_DIRECTORY="$GIT_HOOKS_DIR/../.." cd $PROJECT_DIRECTORY; PHP_CS_FIXER="vendor/bin/php-cs-fixer" HAS_PHP_CS_FIXER=false if [ -x "$PHP_CS_FIXER" ]; then HAS_PHP_CS_FIXER=true fi if $HAS_PHP_CS_FIXER; then git status --porcelain | grep -e '^[AM]\(.*\).php$' | cut -c 3- | while read line; do ${PHP_CS_FIXER} fix --config=.php_cs --verbose ${line}; git add "$line"; done else echo "" echo "Please install php-cs-fixer, e.g.:" echo "" echo " composer require --dev friendsofphp/php-cs-fixer:^2.2.0 echo "" fi cd $CURRENT_DIRECTORY; echo "pre commit hook finish"
💡 参考由 https://gist.github.com/jwage/c4ef1dcb95007b5be0da(由 @jwage 调整,适用于 @refinery29)提供的代码。
贡献
请参阅 CONTRIBUTING.md。
许可证
此包使用 MIT 许可证授权。