返回AI问答
Codex Worktree 找不到 .env?用 .worktreeinclude 复制

Codex Worktree 找不到 .env?用 .worktreeinclude 复制

AI问答 Admin 2 次浏览

Codex Worktree 里找不到 .env,通常是因为该文件被 Git 忽略,而新工作树只会自动获得仓库已跟踪的文件。对 Codex App 创建的本地托管 Worktree,可以在仓库根目录增加 .worktreeinclude,只复制确实需要的忽略文件。

最小配置这样写

在主仓库根目录创建 .worktreeinclude

.env
.env.local
config/local-secrets.json

语法与 .gitignore 的路径模式相近。之后新建 Worktree,Codex 会从本地检出目录复制匹配的忽略文件;没有列出的其他未跟踪文件不会一起进入。已经存在于目标位置的文件不会被覆盖。

为什么旧 Worktree 仍然没有

.worktreeinclude 作用在创建本地托管 Worktree 的过程,不会自动补写已经创建好的工作树。旧 Worktree 可以在确认目标路径后手动复制所需文件,或重新创建一个 Worktree 验证规则。不要把 .env 改成 Git 跟踪文件来解决问题,这会增加密钥误提交风险。

先判断是不是适用场景

这个机制针对 ChatGPT 桌面应用管理的本地 Worktree。远程 Worktree、自己在命令行执行 git worktree add 创建的目录,不会因为这份文件自动复制配置;这些环境应通过各自的初始化脚本、密钥注入或部署配置准备环境。

文件到了仍报错怎么办

先在 Worktree 的集成终端确认当前目录,再检查应用读取的是 .env.env.local 还是其他命名。随后核对文件权限和启动命令的工作目录。能看到文件但变量为空,问题已经从“Worktree 没复制”转为“应用没有加载该文件”,应检查框架的环境变量规则,而不是继续修改 .worktreeinclude

只列出运行必需的本地配置,避免把整个密钥目录或家目录复制进每个工作树。这样既能让测试跑起来,也不会把 Worktree 变成敏感文件的无边界副本。

推荐工具

更多