bitexpert/captainhook-infection

Captain Hook 插件,仅针对当前更改集的文件运行 InfectionPHP

v0.7.0 2023-01-01 17:20 UTC

README

此包为 Captain Hook 提供了一个动作,该动作将针对提交的所有更改文件调用 InfectionPHP。仅针对更改文件运行 Infection 可以实现更快的执行速度,这在作为 pre-commit 钩子运行时非常理想。

Build Status Coverage Status Mastodon Follow

安装

安装 bitexpert/captainhook-infection 的首选方式是通过 Composer。您可以将 bitexpert/captainhook-infection 添加为开发依赖项,如下所示

composer.phar require --dev bitexpert/captainhook-infection

用法

将以下代码添加到您的 captainhook.json 配置文件中

{
  "pre-commit": {
    "enabled": true,
    "actions": [
      {
        "action": "\\bitExpert\\CaptainHook\\Infection\\InfectionAction"
      }
    ]
  }
}

默认情况下,该操作将作为命令调用 ./vendor/bin/infection。如果您需要自定义路径,例如,因为您安装了 .phar 发行版,您可以通过向动作传递一个 infection 配置选项来实现。

{
  "pre-commit": {
    "enabled": true,
    "actions": [
      {
        "action": "\\bitExpert\\CaptainHook\\Infection\\InfectionAction",
        "options": {
            "infection": "php infection.phar"
        }
      }
    ]
  }
}

要向 Infection 传递其他参数,例如定义 Infection 使用的线程数,提供类似这样的 args 数组选项

{
  "pre-commit": {
    "enabled": true,
    "actions": [
      {
        "action": "\\bitExpert\\CaptainHook\\Infection\\InfectionAction",
        "options": {
            "args": [
                "-j4"
            ]
        }
      }
    ]
  }
}

贡献

请随时创建分支和扩展现有功能或添加新功能,并通过发送带有您更改的拉取请求!为了建立一致的代码质量,请为您的所有更改提供单元测试并更新文档。

想要贡献吗?

如果您觉得有东西要分享,我们将非常乐意邀请您。请查阅 贡献指南 了解如何操作,以及我们对您的期望。

许可证

Captain Hook Infection Action 在 Apache 2.0 许可下发布。