此翻译可能已过时。

列出待扫描的文件

mago list-files 会按当前配置打印出 Mago 会触及的文件。这是确认 pathsincludesexcludes 是否如你所想发挥作用的最快方式。

基本用法

mago list-files

这会打印 [source].paths 中的文件,即你项目自己的源码。includes 中(通常是 vendor)的文件不会显示,因为它们是为提供上下文而被解析的,并不会被分析。

工具特定的列表

每个工具(linter、格式化器、分析器、guard)都有自己的可选 excludes,会叠加在全局排除之上。因此不同工具处理的文件集不同。要查看某个工具的视角:

mago list-files --command linter
mago list-files --command formatter
mago list-files --command analyzer
mago list-files --command guard

示例

给定如下配置:

[source]
paths    = ["src", "tests"]
excludes = ["cache/**"]                        # excluded from every tool

[analyzer]
excludes = ["tests/**/*.php"]                   # additionally excluded from analysis

[formatter]
excludes = ["src/**/AutoGenerated/**"]         # additionally excluded from formatting

得到的列表会有差异:

mago list-files                       # src/** + tests/**, minus cache/**
mago list-files --command analyzer    # src/** only (tests excluded)
mago list-files --command formatter   # src/** + tests/**, minus AutoGenerated files

把输出管道给其他工具

文件名中可能包含换行符。如果你打算把输出喂给像 xargs 这样的工具,请改用 NUL 字节作为终止符:

mago list-files -0 | xargs -0r ls -l

参考

Usage: mago list-files [OPTIONS]
参数说明
--command <COMMAND>应用某个工具的排除规则。可选值:linterformatteranalyzerguard
-0, --zero-terminate用 NUL 而非换行符作为文件名终止符。
-h, --help打印帮助并退出。

全局参数必须放在 list-files 之前。完整列表见 CLI 概览

↳ 编辑此页 →