moxio / captainhook-yarn-deduplicate
Captain Hook 插件,用于使用 yarn-deduplicate 检查 yarn.lock 文件中的不必要重复项
Requires
- php: ^7.2 || ^8.0
- captainhook/captainhook: ^4.4 || ^5.0
- sebastianfeldmann/cli: ^3.0
- sebastianfeldmann/git: ^2.2 || ^3.0
Requires (Dev)
- phpunit/phpunit: ^8.5
- squizlabs/php_codesniffer: ^3.5
This package is auto-updated.
Last update: 2024-09-22 22:04:28 UTC
README
moxio/captainhook-yarn-deduplicate
此项目是 CaptainHook 的插件,用于通过 yarn-deduplicate 检查 yarn.lock
文件中的重复包。如果找到重复的包,则提交将被阻止。然后您可以运行 yarn-deduplicate
来手动修复这些问题。
安装
使用 composer 将其作为开发依赖项安装
$ composer require --dev moxio/captainhook-yarn-deduplicate
使用方法
将 yarn-deduplicate 验证添加到您的 captainhook.json
配置文件中的 pre-commit
{ "pre-commit": { "enabled": true, "actions": [ { "action": "\\Moxio\\CaptainHook\\YarnDeduplicate\\YarnDuplicationCheckAction" } ] } }
只有在提交对 yarn.lock
的更改时才会运行检查。因此,只要 Yarn 锁定文件没有更改,它就不会检测到现有的重复项。
此操作期望 yarn-deduplicate 作为本地 NPM 包安装(即在 node_modules/.bin/yarn-deduplicate
中可用)。
条件使用
如果您只想在安装了 yarn-deduplicate(即在 node_modules/.bin/yarn-deduplicate
中可用)时执行重复项检查,您可以在操作中添加相应的条件
{ "pre-commit": { "enabled": true, "actions": [ { "action": "\\Moxio\\CaptainHook\\YarnDeduplicate\\YarnDuplicationCheckAction", "conditions": [ { "exec": "\\Moxio\\CaptainHook\\YarnDeduplicate\\Condition\\YarnDeduplicateInstalled" } ] } ] } }
这在以下场景中可能很有用:您有一个共享的 CaptainHook 配置文件,该文件在既使用 yarn-deduplicate 又不使用 yarn-deduplicate 的项目中都被 包含。如果安装了 yarn-deduplicate,则执行操作。在没有 yarn-deduplicate 的项目中,验证将被跳过。
版本控制
此项目遵循 语义版本控制。
贡献
欢迎对此项目做出贡献。请确保您的代码遵循 PSR-12 扩展编码风格。
许可
此项目采用 MIT 许可证发布。