isaac/composer-git-hooks

此包已被废弃且不再维护。作者建议使用 iodigital-com/composer-git-hooks 包代替。

ISAAC Composer Git Hooks

安装数量: 41,177

依赖者: 1

建议者: 0

安全性: 0

星标: 2

关注者: 10

分支: 2

开放问题: 1

类型:composer-plugin

v2.2.3 2024-01-23 16:40 UTC

README

此存储库已被归档,并由 iO Composer Git Hooks 仓库 替换。

Composer 包已被替换为 iodigital-com/composer-git-hooks

要升级到新包,请执行以下步骤

composer remove --dev isaac/composer-git-hooks
composer config --unset allow-plugins.isaac/composer-git-hooks
composer require --dev iodigital-com/composer-git-hooks

在最后一步,确认自动将 iodigital-com/composer-git-hooks 添加到 allow-plugins 配置中。

ISAAC Composer Git Hooks

设置 .git/hooks 文件夹以运行项目 bin/git-hooks/{hookName}.d 文件夹中找到的脚本。

工作原理

  1. 将包作为开发依赖项包含
  2. 在 composer 安装/更新时,所有 git 钩子 (.git/hooks/{pre-commit,post-commit,...}) 都将被符号链接到本模块的 scripts/chain-hook
  3. chain-hook 脚本将运行项目 bin/git-hooks/{hookName}.d 文件夹中找到的脚本。

先决条件

  • Composer 管理的项目

安装

将包作为开发依赖项添加。

composer require --dev isaac/composer-git-hooks

将包添加到 composer.json 文件中的 allow-plugins 部分

{
    "config": {
        "allow-plugins": {
            ...
            "isaac/composer-git-hooks": true
            ...
        }
    }
}

手动运行脚本

此包是 composer 插件,将在 composer installcomposer update 时自动安装 githooks。但是,如果您需要它,可以通过将其作为 composer 脚本添加并执行来手动运行安装器。

将以下内容添加到 composer.json

"scripts": {
    ...
    "install-git-hooks": "ISAAC\\ComposerGitHooks\\ComposerPlugin::process"
    ...
},

运行它

composer run-script install-git-hooks

使用方法

将特定于项目的 git-hooks 添加到 bin/git-hooks/{hookName}.d。例如

  • bin/git-hooks/pre-commit.d/phpstan
  • bin/git-hooks/pre-commit.d/phpcs

所有脚本(在本例中为 pre-commit)都应返回 0 退出代码,以便整个钩子成功。

贡献

创建合并请求。此包使用了 composer 插件接口。请参阅 composer 文档