isaac / composer-git-hooks
v2.2.3
2024-01-23 16:40 UTC
Requires
- php: ~7.4.0 || ~8.0.0 || ~8.1.0 || ~8.2.0
- composer-plugin-api: ^2.0
Requires (Dev)
- composer/composer: ^2.0
- isaac/php-code-sniffer-standard: ^28.2.0
- phpstan/extension-installer: ^1.2.0
- phpstan/phpstan: ^1.10.1
- phpstan/phpstan-strict-rules: ^1.5.0
This package is auto-updated.
Last update: 2024-01-23 16:41: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
文件夹中找到的脚本。
工作原理
- 将包作为开发依赖项包含
- 在 composer 安装/更新时,所有 git 钩子 (.git/hooks/{pre-commit,post-commit,...}) 都将被符号链接到本模块的
scripts/chain-hook
。 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 install
和 composer 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 文档。