badung7576/php_cs_precommit

在提交前检查代码的 php-cs-fixer 和 phpcpd

安装: 0

依赖: 0

建议者: 0

安全: 0

星星: 0

关注者: 1

分支: 0

开放问题: 0

语言:Shell

类型:composer-plugin

dev-master 2021-01-20 16:36 UTC

This package is auto-updated.

Last update: 2024-09-21 00:46:08 UTC


README

关于

自动安装 git pre-commit 钩子,用于运行 Php-cs-fixer 和 Phpcpd 代码检查,以确保符合 PSR2 编码规范和检测重复代码。它只检查即将提交的文件。

  • 检查代码 php-cs-fixer
  • 检查代码 phpcpd

安装

使用 composer require 命令安装 badung7576/php_cs_precommit

$ composer require badung7576/php_cs_precommit

为了启用代码嗅探,将 "post-install-cmd" 和 "post-update-cmd" 添加到 composer.json 安装脚本中

"post-install-cmd": [
    "sh ./vendor/badung7576/php_cs_precommit/src/setup.sh"
],
"post-update-cmd": [
    "sh ./vendor/badung7576/php_cs_precommit/src/setup.sh"
]

然后运行 composer installcomposer update。如果已经存在,将安装或更新 pre-commit 钩子。
在项目根目录创建简单的文件 .php_cs
.php_cs 文件用于配置 php-cs-fixer 的检查规则。
PHP-CS-Fixer 有很多选项和配置方式。您可以在此处了解更多信息:[PHP_CS_FIXER](https://github.com/FriendsOfPHP/PHP-CS-Fixer)

<?php

$finder = PhpCsFixer\Finder::create()
    ->notPath('vendor')
    ->notPath('bootstrap')
    ->notPath('storage')
    ->in(__DIR__)
    ->name('*.php')
    ->notName('*.blade.php');

return PhpCsFixer\Config::create()
    ->setRules([
        '@PSR2' => true,
        'no_unused_imports' => true,
    ])
    ->setFinder($finder);
    

当运行 Php-cs-fixer 时,它将创建文件 .php_cs.cache,您可以将其添加到 .gitignore 中以忽略。
如果您遇到错误:sh not recognized internal external command
=> 在 Windows 中将目录 C:\Program Files\Git\bin 添加到 PATH 环境变量