sebastianfeldmann/captainhook

此软件包已废弃且不再维护。作者建议使用captainhook/captainhook软件包。

PHP git钩子管理器

2.2.0 2018-11-09 16:29 UTC

README

CaptainHook

Latest Stable Version Downloads Build Status Twitter

CaptainHook是一个易于使用且非常灵活的php开发者git钩子库。它允许您通过简单的json文件配置您的git钩子操作。

您可以使用CaptainHook来验证或准备您的提交消息,确保代码质量或在实际提交或推送到git之前运行单元测试。在拉取最新更改后,您可以自动清除本地缓存或安装最新的composer依赖项。

CaptainHook使得在团队内共享钩子变得容易,甚至可以确保团队中的每个人都在本地激活钩子。

您可以运行cli命令,使用一些内置的验证器,或编写由CaptainHook执行的自己的PHP类。有关更多信息,请参阅文档

安装官方版本

使用Phive安装CaptainHook PHAR或从github 发布页面下载PHAR。

    $ phive install captainhook

或者使用Composer安装CaptainHook

    $ composer require --dev captainhook/captainhook

设置

安装CaptainHook后,您可以使用captainhook可执行文件创建一个配置。

    $ vendor/bin/captainhook configure

现在应该有一个captainhook.json配置文件。

如果您尚未使用composer-plugin,您必须手动激活钩子,将它们安装到您本地的.git存储库中。为此,只需运行以下captainhook命令。

    $ vendor/bin/captainhook install

查看这个简短的安装视频。

Install demo

如果您想确保整个团队使用相同的钩子,并确保每个人都安装了钩子,您可以使用CaptainHookcomposer-plugin作为补充。

    $ composer require --dev captainhook/plugin-composer

该插件将确保在每次执行composer installupdate后激活钩子。如果您不喜欢额外的依赖项,只需将以下scripts命令添加到您的composer.json文件中即可。

{
  "scripts": {
    "post-autoload-dump": "vendor/bin/captainhook install -f -s"
  }
}

配置

以下是一个示例captainhook.json配置文件。

{
  "commit-msg": {
    "enabled": true,
    "actions": [
      {
        "action": "\\CaptainHook\\App\\Hook\\Message\\Action\\Beams",
        "options": []
      }
    ]
  },
  "pre-commit": {
    "enabled": true,
    "actions": [
      {
        "action": "phpunit"
      },
      {
        "action": "phpcs --standard=psr2 src"
      }
    ]
  },
  "pre-push": {
    "enabled": false,
    "actions": []
  }
}

贡献

您想为CaptainHook库做出贡献?太好了!非常感谢。我绝对可以使用您的帮助。

请参阅贡献指南