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"
]
}
}