asseco-voice / laravel-code-quality

dev-master 2021-01-25 11:19 UTC

This package is auto-updated.

Last update: 2024-09-25 19:18:46 UTC


README

代码质量标准

此存储库旨在成为任何 Laravel(微)服务提交代码到存储库时相关质量标准的单一位置。其主要目的是创建git hooks,这些 hooks 会捕获任何预提交操作,并检查代码是否按照约定的标准编写。如果失败,则不会进行提交。

本文档中的命名约定

  • SERVICE 用于描述存储库、微服务、外部服务以及类似内容。需要使用此存储库以符合特定编码标准的代码库。
  • CQS 是此存储库。缩写为 Code Quality Standard。

安装

使用 composer require asseco-voice/laravel-code-quality 安装此包。Laravel 服务提供程序将自动安装。

安装成功后,您将获得 2 个新的 Artisan 命令可用

  • asseco:git-hooks - 将通过从 CQS/.githooks 复制到 SERVICE/.git/hooks 目录来安装 git-hooks。
  • asseco:tdd - 如果尚未存在,将安装实时监控依赖项(NPM 包 + gulp 文件),并根据您提供的标志(命令本身中解释)运行实时监控测试文件夹以及 App 目录下的文件,以启用带有通知标志的自动测试运行,指示测试是否成功。这在某种程度上非常有用,您不必在 IDE 和终端之间来回切换,以查看测试是否通过。不要在 Docker 中运行,否则您将不会收到通知。

IDE 支持

要将在您的 IDE 中集成 PHP 代码检查器和错误检测工具,并在每个项目中可用,而不是为每个项目设置它,建议您将 CQS 存储库克隆到与 SERVICE 相同的目录级别。

|
|--- code-quality
|--- service1
|--- service2

之后,将您的 IDE 指向 phpcs.xml 作为 PHP 代码检查器的规则集,以及 phpmd.xml 作为错误检测规则集。

有关 PHPStorm 质量工具详细信息 的链接。

用法与测试

要测试 git hook 脚本而不将任何内容提交到存储库,您可以简单地运行例如 bash SERVICE/.git/hooks/pre-commit.sh

请注意,该脚本仅对使用 git add 命令暂存的 PHP 文件运行。

质量检查

PHP 代码检查器

https://github.com/squizlabs/PHP_CodeSniffer/wiki/Customisable-Sniff-Properties

PHP 错误检测器

https://phpmd.org/rules/index.html