bigtallbill/hooker 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

bigtallbill/hooker

最新稳定版本:0.1.3

Composer 安装命令:

composer require bigtallbill/hooker

包简介

An extendable PHP commit hook

README 文档

README

Build Status

Coverage Status

codeship

hooker

An extendable php commit hook

Installation

  1. Download binary https://github.com/bigtallbill/hooker/releases/tag/0.1.0
  2. Copy the binary release to a directory that is loaded by your PATH
  3. Make the file executable chmod a+x hooker
  4. Check installation which hooker

Usage

  1. open a terminal and cd to the target repository
  2. run hooker install

This will install a hooker.json config file and also update the commit hook files for this repo to execute hooker

Now when you try to commit something for example. hooker will execute.

hooker.json Config

The hooker.json config file contains settings for each type of hook.

{
    "preCommit": {},
    "commitMsg": {
        "firstWordImperative": true,
        "maxSummaryLength": 50,
        "maxContentLength": 72,
        "summaryIgnoreUrls": true,
        "contentIgnoreUrls": true,
        "lineAfterSummaryMustBeBlank": true,
        "scripts": {
            "after": [
                {
                    "cmd": "runtests.sh",
                    "passGitArgs": false,
                    ""
                }
            ]
        }
    }
}

"scripts"

Every hook type can have the element scripts. This allows you to execute arbitrary code that is not a native hooker check.

"scripts": {
    "after": [
        {
            "cmd": "runtests.sh"
        }
    ]
}

The "after" key defines when to run the script (currently after is the only one). After means run after hooker's own internal code for that hook.

Then we have an array of scripts to run.

Here is a sample script object:

{
    "cmd": "runtests.sh",
    "passGitArgs": false,
    "relativeToRepo": false
}

"cmd" is the command to execute

"passGitArgs" When set to true will append the git arguments onto the scripts existing arguments

"relativeToRepo" Execute this script relative to the repo. Currently this is pretty dumb, it will just prepend the repository path to the cmd.

"commitMsg"

  • firstWordImperative = Ensure that the first word in a commit message is imperative present-tense
  • maxSummaryLength = The maximum length of the summary line
  • maxContentLength = The maximum length of the message body
  • summaryIgnoreUrls = Ignore length of lines with urls in (useful if you cant help the length of urls)
  • contentIgnoreUrls = Ignore length of lines with urls in (useful if you cant help the length of urls)
  • lineAfterSummaryMustBeBlank = Ensure that the line after the summary is blank

统计信息

  • 总下载量: 963
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 3
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 3
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: proprietary
  • 更新时间: 2015-03-07