学习目标
一个独立任务目录和可以审查的代码差异。
适用场景
你正在修改页面,另一个任务要修接口。共用同一个工作目录会相互改动文件。本篇用 Git worktree 演示可检查的隔离;Codex 桌面端也有 Worktree 入口,文案与支持以当前版本为准。
准备条件
- 项目是 Git 仓库,有可识别的已提交起点。
- 两个任务使用不同测试端口和数据资源;不自动共享生产配置。
操作步骤
先选择可信的起点
检查当前分支、提交与未提交改动。下面从当前 HEAD 新建任务分支,不会自动复制未提交内容;需要的改动先用项目允许的方式保存或提交。Codex 桌面端创建 Worktree 时也要检查所选起始分支,不默认等于当前工作区。
查看状态,再创建示例任务目录git status --short git log -1 --oneline git worktree add -b task-ui-demo ../project-ui-demo HEAD git worktree list在隔离目录准备本地环境
进入新目录再让 Codex 接收任务。依赖、被忽略文件和运行端口按项目流程准备;不要直接复制整份含生产密钥的 .env。worktree 隔开的是文件检出,不是数据库、网络、账号或机器资源。需要沙箱和权限约束时另按宿主设置。
交给 Codex 的任务边界工作目录:新建的 project-ui-demo,先核对实际路径与 HEAD。 任务:只修改资料列表的标题排版。 保留:接口、数据、其他任务的代码。 检查:使用本项目已有命令,独立测试端口和测试库。 交付:列出差异、验证结果和未验证项;不自动发布。回到差异做集成,而不是复制整个目录
在任务 worktree 检查 diff 与测试,形成项目允许的提交。集成时核对目标分支有没有被别的任务推进,再按项目流程合入和重验。共享 Git 元数据意味着分支操作仍会互相可见;同一分支通常不能在两处同时检出。
只在保留工作后回收
确认提交已合入或有可恢复快照,停止该任务自己的服务,再删除干净的 worktree。下面是 Git 管理的目录;Codex 管理的 worktree 优先用应用提供的归档方式。不要使用 force 掩盖未保存的工作。
先确认任务成果,再回收 Git 管理的目录git -C ../project-ui-demo status --short git worktree list # 仅在确认干净且成果已保存后执行: git worktree remove ../project-ui-demo
常见误区
- 认为 Worktree 会自动包含当前所有改动和密钥。
- 核对起点;未提交和忽略文件需要按项目流程单独处理。
- 两个独立目录共用同一个测试库,互相删数据。
- 文件隔离不等于运行环境隔离,为测试数据和端口分配独立资源。
验收清单
- 两个任务目录和分支可识别。
- 任务没有依赖未经处理的本地修改。
- 测试端口、数据与权限边界明确。
- 成果审查并保存后才回收,未强删工作。
资料与版本
本文为原创整理,示例需按项目调整;工具界面与功能以当前版本为准。