Skip to content

配置参考

Task 提供多种配置方式。这些方法按以下顺序依次解析,优先级从低到高:

本文档将重点介绍三种方式中的第二种——配置文件。

文件优先级

Task 会自动按以下优先级顺序(从高到低)查找包含配置文件的目录:

  • 当前目录(或通过 --taskfile/--entrypoint 标志指定的目录)
  • 从当前目录(或通过 --taskfile/--entrypoint 标志指定的目录)向上遍历目录树,直至用户主目录或磁盘根目录
  • 用户 $HOME 目录
  • $XDG_CONFIG_HOME/task 目录

当前目录、其父目录或主目录中的配置文件应命名为 .taskrc.yml.taskrc.yaml$XDG_CONFIG_HOME/task 目录中的配置文件命名方式相同,但不应包含 . 前缀。

所有配置文件将合并为统一配置,从优先级最低的 $XDG_CONFIG_HOME/task 文件开始,后续文件若设置了值则会覆盖先前的配置。

例如,给定以下文件:

$XDG_CONFIG_HOME/task/taskrc.yml
yaml
# 优先级最低的全局配置
option_1: foo
option_2: foo
option_3: foo
$HOME/.taskrc.yml
yaml
option_1: bar
option_2: bar
$HOME/path/to/project/.taskrc.yml
yaml
# 优先级最高的项目配置
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: 2

verbose

  • 类型boolean
  • 默认值false
  • 描述:为所有任务启用详细输出
  • CLI 等效项-v, --verbose
yaml
verbose: true

concurrency

  • 类型integer
  • 最小值1
  • 描述:并发运行的任务数量
  • CLI 等效项-C, --concurrency
yaml
concurrency: 4

配置示例

以下是一个包含所有可用选项的完整 .taskrc.yml 文件示例:

yaml
# 全局设置
verbose: true
concurrency: 2

# 启用实验性功能
experiments:
  REMOTE_TASKFILES: 1