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

dbt的--project-dir选项官方文档位置及功能问询

dbt --project-dir 参数常见疑问解答

核心作用说明

--project-dir 是dbt的全局路径参数,不属于节点选择语法范畴,所以你在节点选择语法相关文档中找不到相关说明属于正常情况。
它的作用是显式指定dbt项目的根目录位置,与你理解的「覆盖指定目录下所有SQL文件运行」完全无关。
dbt默认会在你执行命令的当前工作目录下查找dbt_project.yml文件,以此作为项目根目录的标识。如果你执行命令的目录不是项目根目录,就需要通过--project-dir参数指定到包含dbt_project.yml的对应目录。

示例命令行为解释

你提到的dbt run --project-dir /home/dbt/my_project命令,执行逻辑如下:

  1. dbt首先前往/home/dbt/my_project路径下查找dbt_project.yml配置文件
  2. 按照该配置文件的定义、以及你额外指定的节点筛选规则执行任务:如果你没有加--select之类的筛选参数,默认会运行项目中所有已启用的模型,而非该目录下所有的*.sql文件

版本适配说明

你使用的0.18.1版本dbt已支持该参数,Docker环境和Windows环境下的参数作用完全一致。

相关注意事项

  • 如果需要指定运行某个目录下的模型,需要搭配节点选择参数使用,例如dbt run --select models/your_target_dir/
  • --project-dir仅负责定位项目根目录,不会对模型筛选逻辑产生任何影响
  • 如果你指定的路径下不存在dbt_project.yml文件,dbt会直接报错终止,不会执行任何模型

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 16:54:00