提交代码前需要按照步骤使用 Git 命令逐项检查:先执行 git status 查看仓库当前状态,如果仓库尚未初始化,则先运行 git init;随后配置 user.name 和 user.email;再通过 git status -- '*.js' 和 git diff 检查具体代码改动;使用 git add 添加单个文件,或通过 git add -p 进行交互式暂存;如果误把文件加入暂存区,可用 git restore --staged 撤销暂存;最后执行 git commit,并手动编写规范的提交信息。

如果你想在 Codex 里把修改后的代码安全提交到 Git 仓库,又担心遗漏改动、误提交敏感文件,或者提交说明写得不规范,那么就不要直接点按钮提交,而是要先在终端中使用 Git 命令逐层确认,再完成提交操作。
确认当前项目是 Git 仓库
打开 Codex 内置终端(右上角点击切换终端),先运行 git status。如果返回 “fatal: not a git repository”,说明当前项目还没有初始化为 Git 仓库。
此时执行 git init 初始化仓库。这一步非常关键,否则后续所有 Git 提交命令都无法正常执行。
【必须提前配置用户信息,否则 commit 会报错】:先运行 git config --global user.name "Your Name" 和 git config --global user.email "your@email.com",完成用户名与邮箱配置;这里填写的名字和邮箱应与远程代码托管平台保持一致,否则在提交代码时很容易出现身份识别或关联异常。
查看真实改动内容
运行 git status,它通常会列出三类文件:“红色”表示已修改但未暂存,“绿色”表示已暂存等待提交,“灰色”表示未跟踪的新文件。
不要一上来就执行 git add .。Codex 不会自动帮你过滤 node_modules/、dist/ 或 .env 这类目录和文件,这些内容一旦提交,不仅可能泄露密钥,还会让仓库体积变大、影响版本管理效率。
如果你只想查看 JavaScript 文件的变动,可以运行 git status -- '*.js'。这样能更快聚焦核心业务逻辑相关的代码修改。
真正要核对代码具体改了哪些行,执行 git diff。其中 + 表示新增,- 表示删除,灰色部分是上下文内容。如果输出为空但 git status 依然显示有改动,很可能是换行符(CRLF/LF)被系统自动转换了,并不一定是实际代码发生了变化。
分步暂存要提交的文件
第一步:精准添加单个文件git add src/auth/login.ts。这种方式比 git add . 更安全,能有效避免把临时文件或自动生成文件一起加入暂存区。
第二步:对大文件使用交互式拆分暂存git add -p config.js。终端会按代码块逐段提示“这块要不要加?”,按 y(是)、n(否)、s(拆成更小块)。例如你只改了 3 行,就应该用这个命令精确选择,而不是把整个 200 行配置文件一次性全部提交。
第三步:撤回误加的文件git restore --staged secrets.json。这条命令会立即把该文件从暂存区移除,但工作区中的代码仍然保留,不影响你继续修改和编辑。
写规范提交信息并完成提交
运行 git commit(不要加 -m 参数),Codex 会自动打开默认编辑器(通常是 nano 或 vim),让你手动填写 Git 提交信息。
第一行必须是简洁、以动词开头的标题,长度控制在 50 字以内,例如:fix(auth): prevent token reuse after logout
空一行之后,可以继续补充正文,说明本次改动的原因、影响范围,或关联的 issue 编号。写完后保存并退出编辑器,本次 Git 提交就完成了。
