babymarkt / composer-cleaner-plugin
一个用于清理项目目录的 Composer 插件
v1.0.0-beta.3
2020-09-23 17:33 UTC
Requires
- php: >=5.6 || ^7
- composer-plugin-api: ^1.1
Requires (Dev)
This package is auto-updated.
Last update: 2024-09-24 03:12:24 UTC
README
安装
要安装此插件,请使用 Composer
composer require --dev babymarkt/composer-plugin-cleaner
配置
配置必须放置在 composer.json
文件的 extra
部分。以下是一个示例:
{ "name": "company/your-project", "type": "project", "extra": { "babymarkt:cleaner": { "context-name": { "pattern": [ "README*", ".git*" ], "paths": [ "test", "artifacts" ], "exclude": [ "test/important" ] } } }, "require-dev": { "babymarkt/composer-plugin-cleaner": "*" } }
该程序在 default
上下文中包含默认配置(惊喜惊喜!)。更多详细信息可以在类 AbstractCommand
中找到。运行
composer babymarkt:cleaner:clean default
来使用它。
配置选项
上下文
每个配置集都包含在一个清理上下文中。上下文是一个简单的字符串,可以在终端中使用它来选择配置。
{ "extra": { "babymarkt:cleaner": { "context-name": { "your cleaner options": "..." } } } }
模式
pattern
包含一个列表,用于在项目目录树中选择文件。有关 glob
函数和模式的更多信息,请参阅 PHP 文档 或 维基百科。
{ "extra": { "babymarkt:cleaner": { "context-name": { "pattern": [ "README*", ".git*" ] } } } }
此示例在完整的项目树中搜索以 README
或 .git
开头的文件。
路径
默认情况下,清理命令使用项目根目录来搜索文件(包含 composer.json
文件的目录)。使用 paths
选项,您可以设置多个路径来替代默认的根目录进行文件搜索。所有路径相对于根目录,也以 /
开头。根目录之外的路径将被忽略。
{ "extra": { "babymarkt:cleaner": { "context-name": { "pattern": [ ".git*" ], "paths": [ "src", "vendor" ] } } } }
此示例在 ./src
和 ./vendor
中搜索以 .git
开头的文件,其他地方不搜索。
排除
此选项允许您排除要删除的文件。列表由 正则表达式 模式组成,无需指定分隔符字符。模式应用于整个路径,而不仅仅是文件名。使用的分隔符字符是 #
。如果您需要在模式中使用它,您必须转义它。
{ "extra": { "babymarkt:cleaner": { "context-name": { "pattern": [ "data/*" ], "exclude": [ ".*\\.important" ] } } } }
此示例搜索以 data/
开头且不以 .important
结尾的路径。
运行
要运行该命令,请使用 composer
composer babymarkt:cleaner:clean your-context-name
或向您的 composer.json
添加自定义脚本
{ "scripts": { "cleanup:dev": [ "@composer babymarkt:cleaner:clean your-context-name" ] } }