cpsit / setup-helper
帮助设置项目包。这是一个composer插件。它会在更新或安装命令后执行预定义的任务。
2.0.0
2021-06-10 22:30 UTC
Requires
- php: ^7.3 || ^8.0
- composer-plugin-api: ^1.1 || ^2.0
- naucon/file: ^1.0
- symfony/filesystem: ^5.0
- webmozart/glob: ^4.3
Requires (Dev)
- composer/composer: ^1.6.3 || ^2.1
- mikey179/vfsstream: ^1.6
- phpunit/phpunit: ^8.5 || ^9.5
- roave/security-advisories: dev-latest
This package is auto-updated.
Last update: 2024-09-17 17:52:58 UTC
README
设置助手
帮助基于配置和模板设置项目包。
这是一个composer插件。它在update
或install
命令后执行预定义的任务。
用法
composer require cpsit/setup-helper
配置
将setup-helper
键添加到composer.json
文件的extra
部分。**注意**:路径必须是相对于您的composer根目录或绝对路径。
复制文件或文件夹
{ "extra": { "setup-helper": [ { "copy": { "path/to/file/or/folder": "path/to/target", "other/file": "other/target" } } ] } }
取消链接文件或文件夹
{ "extra": { "setup-helper": [ { "unlink": [ "path/to/file/or/folder", "other file" ] } ] } }
- 没有**确认请求**。任何现有的文件或文件夹都将被删除!
移动文件或文件夹
{ "extra": { "setup-helper": [ { "move": { "path/to/old/file/or/folder": "path/to/new/folder", "other/file": "new/path" } } ] } }
**注意**:移动不会重命名文件或文件夹。如果需要,请将其与重命名任务结合使用。
重命名文件或文件夹
{ "extra": { "setup-helper": [ { "rename": { "path/to/old/file/or/folder": "newName", "other/file": "otherName" } } ] } }
源路径相对于当前工作目录。这应该是composer根目录,如果通过composer插件API调用安装器,则预期如此。
创建目录
{ "extra": { "setup-helper": [ { "makeDirectory": [ "path/to/new/folder" ] } ] } }
目录路径相对于当前工作目录。这应该是composer根目录,如果通过composer插件API调用安装器,则预期如此。任何缺少的目录都将递归创建。
从源到目标的符号链接
{ "extra": { "setup-helper": [ { "symlink": { "path/to/source/file": "target", "file": "even/deeper/path/to/target" } } ] } }
源路径相对于当前工作目录。这应该是composer根目录,如果通过composer插件API调用安装器,则预期如此。如果源或目标存在,则不会创建符号链接。
替换
- 用另一个字符串替换字符串
{ "extra": { "setup-helper": [ { "replace": [ { "path": "path/to/file", "search": "string-to-replace", "replace": "replacement string" } ] } ] } }
- 用作为问题的答案的字符串(交互式)替换字符串
{ "extra": { "setup-helper": [ { "replace": [ { "path": "path/to/file", "search": "string-or-pattern-to-replace", "ask": "Question to ask for (Answer replaces pattern)" } ] } ] } }
path
键遵循Ant-like globbing。
语法
?
匹配任何字符*
匹配零个或多个字符,除了/
/**/
匹配零个或多个目录名[abc]
匹配单个字符a
、b
或c
[a-c]
匹配单个字符a
、b
或c
[^abc]
匹配除了a
、b
或c
之外的任何字符[^a-c]
匹配除了a
、b
或c
之外的任何字符{ab,cd}
匹配ab
或cd
例如,"path": /path/to/dir/*.css
将选择该目录中所有以.css
结尾的文件。
有关详细信息,请参阅glob库的文档。
注意事项
目前我们依赖于webmozart/glob
的分支cpsit/glob,因为原始库不允许使用最新的PHP版本。