配置参考
Task 提供多种配置方式。这些方法按以下顺序依次解析,优先级从低到高:
本文档将重点介绍三种方式中的第二种——配置文件。
文件优先级
Task 会自动按以下优先级顺序(从高到低)查找包含配置文件的目录:
- 当前目录(或通过
--taskfile/--entrypoint标志指定的目录) - 从当前目录(或通过
--taskfile/--entrypoint标志指定的目录)向上遍历目录树,直至用户主目录或磁盘根目录 - 用户
$HOME目录 $XDG_CONFIG_HOME/task目录
当前目录、其父目录或主目录中的配置文件应命名为 .taskrc.yml 或 .taskrc.yaml。$XDG_CONFIG_HOME/task 目录中的配置文件命名方式相同,但不应包含 . 前缀。
所有配置文件将合并为统一配置,从优先级最低的 $XDG_CONFIG_HOME/task 文件开始,后续文件若设置了值则会覆盖先前的配置。
例如,给定以下文件:
yaml
# 优先级最低的全局配置
option_1: foo
option_2: foo
option_3: fooyaml
option_1: bar
option_2: baryaml
# 优先级最高的项目配置
option_1: baz最终将得到以下配置:
yaml
option_1: baz # 来自 $HOME/path/to/project/.taskrc.yml
option_2: bar # 来自 $HOME/.taskrc.yml
option_3: foo # 来自 $XDG_CONFIG_HOME/task/.taskrc.yml配置选项
experiments
实验功能部分允许启用 Task 的实验性功能。具体选项不在此列举,请参阅实验功能文档获取更多信息。
yaml
experiments:
feature_name: 1
another_feature: 2verbose
- 类型:
boolean - 默认值:
false - 描述:为所有任务启用详细输出
- CLI 等效项:
-v, --verbose
yaml
verbose: trueconcurrency
- 类型:
integer - 最小值:
1 - 描述:并发运行的任务数量
- CLI 等效项:
-C, --concurrency
yaml
concurrency: 4配置示例
以下是一个包含所有可用选项的完整 .taskrc.yml 文件示例:
yaml
# 全局设置
verbose: true
concurrency: 2
# 启用实验性功能
experiments:
REMOTE_TASKFILES: 1