You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.airflowignore语法疑问:Airflow支持哪些.gitignore语法规则?

Airflow .airflowignore 语法支持与配置有效性分析

一、实际支持的.gitignore语法规则

Airflow的.airflowignore目前完全兼容标准.gitignore的核心语法,这是因为Airflow底层使用gitignore_parser库解析规则,早期文档里“仅用re.findall()正则匹配”的描述属于滞后内容。具体支持的规则包括:

  • 基础glob匹配:比如*.pyc匹配所有.pyc后缀文件,logs/匹配名为logs的目录
  • 否定排除规则:!开头的行,用于撤销之前的忽略规则(注意父目录未被忽略时才生效)
  • 注释:#开头的行会被视为注释,不参与匹配
  • 路径层级限定:/用于区分文件和目录,比如/temp仅匹配根目录下的temp文件/目录,temp/仅匹配目录
  • 递归通配符:**匹配任意层级的目录结构,比如**/test.py匹配所有层级下的test.py文件

二、给定配置的有效性分析

你提供的配置:

*/
!dags/*

不可行,原因是:

  • */会匹配并忽略所有直接子目录(包括dags/目录本身)
  • 根据gitignore规则,当父目录已被标记为忽略时,针对其子内容的否定规则!dags/*不会生效——Airflow会直接跳过已忽略的目录,不会再检查其中的内容

如果需求是仅保留dags目录下的内容,忽略其他所有直接子目录,正确配置应先排除dags/目录不被忽略,再忽略其他目录:

!dags/
*/

更严谨的写法(覆盖所有递归场景):

*
!dags/
!dags/**

内容的提问来源于stack exchange,提问作者Chris

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 10:33:17