这是 Codex CLI 在问新开的 conversation会话要在哪个 Git 工作区里执行1. Current checkoutKeep using the current working directory就是继续使用你现在所在的项目目录。例如你现在终端位于~/projects/my-app选择Current checkout后新 Codex 会话仍然直接操作~/projects/my-app因此它能看到你当前所有文件包括尚未 commit 的修改。它接下来修改代码也会直接反映在这个目录里。适合你就是想接着当前项目继续干活。2. New worktreeCreate an isolated managed checkout这是利用 Git 的worktree功能给这个新会话创建一个隔离的工作副本。可以简单理解成你的主工作区 my-app/ ↓ ├── 你继续在这里开发 Codex 新 worktree 另一个目录/ ↓ ├── Codex 在这里独立修改这样 Codex 的修改不会直接弄乱你当前工作目录。比如你当前正在main 你正在修改 login.ts同时让另一个 Codex conversation 去尝试Codex 修改 payment.ts 修改 api.ts 运行测试 ...选择New worktree后它可以在隔离环境里折腾不会直接碰你当前 checkout 中那些未提交的修改。最核心的区别就是Current checkoutNew worktree工作目录当前目录新建隔离目录Codex 修改当前文件会不会看到当前未提交修改通常会通常不会直接共享多个 Codex 同时工作容易互相影响更适合最适合延续当前任务并行/独立任务如果你平时只开一个 Codex CLI 干活基本选1. Current checkout就行。而这个界面之所以特别有用是因为 Codex 现在支持你开多个 conversation。比如你可以让Conversation A 修 bug、Conversation B 写测试、你自己继续开发这时候后两个使用独立 worktree可以减少彼此修改文件造成的冲突。另外有个容易误解的地方New worktree不是重新git clone一份仓库。它用的是 Git worktree 机制共享底层 Git 仓库数据但拥有独立的工作目录/checkout所以通常比重新 clone 更轻量。
阅读完成 · 觉得有帮助?