eckinox / eckinox-cs
针对 PHP 项目的 CS/linting 设置,具有强烈的个人观点。
Requires
- php: >=8.0
- eckinox/installer-plugin: ^2.0.2
- friendsofphp/php-cs-fixer: ^3.0
- phpmd/phpmd: ^2.10
- phpstan/extension-installer: ^1.1
- phpstan/phpstan: ^1.4
- phpstan/phpstan-symfony: ^1.1
- vincentlanglet/twig-cs-fixer: ^2.7
Requires (Dev)
- composer/composer: ^1.3 || ^2.1
- phpunit/phpunit: ^9.5
This package is auto-updated.
Last update: 2024-09-02 13:49:18 UTC
README
入门指南
要将编码标准检查器和 linter 添加到您的 PHP 项目中,请按照以下说明操作
- 确保您的项目中没有未提交的文件。
此包将向您的项目添加文件,因此您可能希望一次性提交所有这些文件。 - 使用以下命令使用 Composer 将包添加到您的项目中
composer require --dev eckinox/eckinox-cs
该包将自动将您需要的所有配置文件和实用脚本添加到您的项目中。 - 按照 CLI 中提供的任何附加说明操作。
- 运行以下命令安装 JavaScript 依赖项
npm install
- 确保脚本可执行
chmod +x DEV/**/*
- 将文件提交到您的项目中
git add --a && git commit -m "Adds coding standards and linting checks via eckinox/eckinox-cs"
- 享受!
包含内容
此包类似于 metapackage,但略加修饰。
它不仅通过 Composer 添加其他 PHP 依赖项,还
- 添加 JS 依赖项。
- 创建配置文件。
- 添加 shell 脚本以方便使用工具。
- 添加 Git 预提交钩子。
- 添加 Github Actions 工作流程。
以下是一些相关信息。
工具和包
以下是此包中包含并配置的工具
“Git 感知”列指示仅考虑已暂存文件的执行脚本(位于 DEV/cs/),而不是每次都在您的项目中的每个文件上运行。
配置文件
该包为添加的每个工具创建配置文件。
这些配置文件符合 Eckinox 的编码标准,不应手动更改。
更改的文件可能在 eckinox/eckinox-cs 的后续更新中被覆盖。
Git 预提交钩子
该包包含一个预提交脚本,它将执行提供的所有工具以检查潜在错误和非标准代码。
如果您还没有预提交脚本,则在安装包时,该包将自动设置此脚本(作为符号链接)。
如果您已经有了预提交,您将不得不手动合并这两个脚本。
如果需要能够在某些测试失败时提交,还有一个名为( pre-commit-with-bypass )的另一个预提交脚本可用。在每个工具之后,如果某些测试失败,脚本将询问您是否要继续。该脚本需要手动安装。
Github actions 工作流程
为确保您的项目始终遵守标准,此包添加了一个工作流程,用于在您的代码库上运行每个包含的工具。
这使得项目成员和维护者可以在 Github 中查看每个分支和拉取请求的状态。
私有仓库的认证
如果您通过 Composer 使用私有 Github 仓库,请根据php-actions/composer 的文档中所述设置 HTTP 认证的秘密。
由 eckinox-cs 包包含的工作流程已包括检索和使用该身份验证令牌所需的步骤(如果存在)。