用 Codex 改代码时,我最强烈的建议是:一定要配合 Git 使用。 Codex 很适合帮我们读代码、改代码、排查 bug、补文档、做 review。但只要它开始修改文件,问题就来了:你要知道它改了什么、哪
|
用 Codex 改代码时,我最强烈的建议是:一定要配合 Git 使用。 Codex 很适合帮我们读代码、改代码、排查 bug、补文档、做 review。但只要它开始修改文件,问题就来了:你要知道它改了什么、哪些改动可以留下、哪些改动应该撤掉、出了问题能不能回到修改前。 这时候 Git 就很重要。 OpenAI 官方文档里也建议,在让 Codex 开始任务前后创建 Git checkpoint,方便后续回退;Codex 的 code review 功能也依赖 Git 仓库里的 diff 来检查改动。简单说,Git 是你和 Codex 协作时的“安全绳”。 这篇文章就按实际使用流程讲清楚: 修改前应该做什么
一、为什么 Codex 一定要配合 Git如果你只是让 Codex 解释代码,不一定需要 Git。 但只要你让它做这些事,就建议先准备好 Git:
原因很简单:Codex 可以帮你做事,但你仍然需要判断它做得对不对。Git 能让你看到完整改动,也能让你在不满意时撤回。 我自己的习惯是:
二、修改前:先确认工作区是否干净第一步永远是看状态。
如果输出里有 modified、deleted、untracked,就说明当前工作区已经有改动。 这时候先别急着让 Codex 修改。你要先判断这些改动是谁做的:
如果你在一个已经很乱的工作区里继续让 Codex 改,后面很容易分不清“哪些是它改的,哪些是原本就有的”。 三、修改前:最好新建一个分支如果任务稍微复杂一点,建议单独开分支。
分支名可以按任务来起:
这样做的好处是:
如果你不想建分支,至少也要保证当前分支已经有一个干净的提交点。 四、修改前:把已有改动先处理掉如果 git status 显示有未提交改动,通常有三种处理方式。 方式一:先提交如果这些改动已经完成,可以先提交:
然后再让 Codex 开始新任务。 方式二:先 stash如果这些改动还没完成,但又想临时放起来,可以用:
后面需要恢复时再看:
Git 官方文档里对 stash 的描述很直接:它适合临时保存当前工作目录和暂存区状态,然后让工作区回到干净状态。 方式三:先开新 worktree如果你手头的改动不能动,但又想让 Codex 做另一个任务,可以考虑单独开一个 worktree。 这个方式更适合熟悉 Git 的用户。它的好处是:你可以给 Codex 一个干净目录,让它只在那个目录里做当前任务。 五、给 Codex 的第一个提示词:先看状态,不要动手在真正修改前,可以先这样问:
这个提示词很实用。 它能让 Codex 先帮你看一眼当前现场。 如果状态不干净,你可以继续让它解释:
六、修改中:让 Codex 小步提交思路,而不是一次改到底不要一上来就说:
更稳的方式是拆成三步。 第一步,定位:
第二步,方案:
第三步,执行:
这样 Git diff 会更清楚,后续 review 和回滚也更容易。 七、修改中:随时看 diffCodex 改完一轮后,不要急着继续给新任务。 先看 diff。 看所有改动概览:
看具体未暂存改动:
看已经暂存的改动:
Git 官方文档里说明,git diff 可以查看工作区相对于暂存区的变化,git diff --staged 则用于查看已经暂存、准备提交的变化。 如果你只想看某个文件:
这个习惯非常重要。 Codex 说它只改了 A 文件,但你最好自己用 Git 再确认一次。 八、修改后:让 Codex 写变更摘要修改完成后,可以让 Codex 做一次总结:
然后你再对照:
如果 Codex 的总结和 Git diff 对不上,就要提高警惕。 九、修改后:先 review,再提交如果你用的是支持 /review 的 Codex 环境,可以让它 review 当前改动。
也可以手动写:
OpenAI 官方文档说明,Codex 可以 review uncommitted changes、commit 或 base branch,并且 review 过程不会修改工作区。这个特性很适合提交前检查。 十、修改后:分批暂存,不要无脑 add .如果改动很小,git add . 问题不大。 但如果 Codex 改了多个文件,建议分批暂存:
如果你想更精细一点,可以用:
这样可以按 hunk 选择要提交的内容。 为什么不建议长期无脑 git add .? 因为它可能把这些东西也加进去:
提交前再看一次:
确认没问题后提交:
十一、回滚前:先判断你要撤的是哪一种改动回滚不是一个命令解决所有问题。 你先要判断自己要撤掉的是什么。
我不建议新手一上来就复制危险命令。尤其是 git reset --hard 和 git clean,它们会丢弃大量本地内容,除非你非常确定,否则不要随手用。 十二、回滚前:让 Codex 先解释,不要让它直接删如果你不确定该怎么撤,可以先这样问 Codex:
再让它具体一点:
这一步能避免你一冲动把有用改动也删掉。 十三、一个安全的回滚流程如果你想撤掉 Codex 的某次修改,可以按这个顺序来:
对应命令大概是:
重点是:先看,再撤。 不要在没看 diff 的情况下直接清空所有修改。 十四、一个完整示例:让 Codex 修登录报错假设你要让 Codex 修登录失败提示。 第一步:准备 Git 环境
第二步:让 Codex 先定位
第三步:让 Codex 给方案
第四步:允许修改
第五步:检查 diff
第六步:让 Codex review
第七步:提交
这样一套下来,你会非常清楚:
十五、适合收藏的提示词模板修改前
修改中
修改后
回滚前
十六、总结Codex 和 Git 搭配起来,真正的价值不是“让 AI 随便改代码”,而是让整个过程可控:
我现在用 Codex 的基本原则是:
这样用起来会稳很多,也更像一个正常的开发协作流程。 |
2026-07-02
2026-06-24
2026-09-06
2026-06-01
2026-06-27