给不懂技术的人,一张不会迷路的 Git 地图

不背命令,
先看懂开发如何留下痕迹

把 Git 当作带说明的游戏存档,把 Codex 当作执行力很强的开发队友。你会学会什么时候观察、什么时候保存,以及什么时候必须停下来确认。

12
章完整课程
30
分钟最小实操
0
个必须死背的命令
存档 01项目能运行09:20 · main
存档 02完成登录页10:45 · feat/login
从这里另开一条安全支线
PowerShell
PS> git status
On branch feat/login
nothing to commit

全教程最重要的一张图

Git 的所有动作,都在这四个区域之间发生

先判断内容现在在哪,再决定使用什么命令。箭头代表内容逐步成为正式历史并到达协作平台。

01工作区

你正在编辑的真实文件

git add
02暂存区

下一次提交的内容清单

git commit
03本地仓库

电脑上的提交历史

git push
04远程仓库

供备份和协作的共享历史

一句话记忆编辑在工作区,挑选进暂存区,提交到本地仓库,推送到远程仓库。

先分清角色

Git 不是 GitHub,Codex 也不是 Git

A

Git

负责版本历史。即使没有网络,也能提交、分支和比较。

工具 / 机制
B

GitHub / GitLab

托管远程仓库,并提供 PR、权限、评审和自动化。

协作平台
C

Codex

理解任务、修改代码、运行检查,也可以按授权操作 Git。

开发队友

最快学习路线

第一次只花 30 分钟

不追求一次学完。先完成一条最短闭环,让每个概念都对应一个亲手做过的动作。

  1. 01
    5 分钟理解四个区域

    先建立地图,不背命令。

  2. 02
    10 分钟完成一次提交

    status → diff → add → commit。

  3. 03
    10 分钟建立功能分支

    让试验与稳定主线分开。

  4. 04
    5 分钟交给 Codex 复盘

    让它解释每一步改变了什么。

命令不是越多越专业

先学会识别风险颜色

绿色命令负责看清楚;黄色命令改变状态;红色命令可能丢数据或重写历史。

绿色:放心观察

只读取信息,不改变文件、历史或远程状态。遇到陌生仓库先从这里开始。

statusdifflogshowbranch --show-currentremote -v

黄色:明确目标再做

会改变暂存区、分支、提交或远程。先确认范围、当前分支和预期结果。

addcommitswitchmergepullpushrevert

红色:必须停下来确认

可能丢失未提交内容、重写历史或覆盖远程。需要精确目标、备份和明确授权。

reset --hardpush --forceclean -fdrestore <文件>rebase 共享历史

Codex 安全工作流 · 直接复制使用

把“你帮我弄一下”变成可验证的开发任务

好提示词不需要很长,但要说明目标、上下文、约束和完成标准。下面是完整工作流中的八个常用模板。

01

第一次打开项目

你不了解当前仓库状态,希望先弄清楚再动手。

请先只读检查当前项目:仓库根目录、当前分支、工作区状态、最近 5 个提交和远程地址。把用户原有未提交改动单独列出。先解释发现,不要修改文件、配置或 Git 状态。
02

复杂任务先规划

需求涉及多个文件、存在歧义或风险较高。

目标:【写明想得到的结果】。上下文:【相关文件、错误、参考资料】。约束:【不能改什么、需要保留什么】。完成标准:【测试、界面或行为】。请先检查项目并提出分步计划,指出风险和待确认事项;计划确认前不要实现。
03

安全实施修改

目标和范围已经明确。

请按已确认方案实施。保护用户原有改动,只修改必要文件;不新增无关依赖,不执行提交、推送、删除、reset、clean 或强制操作。完成后运行相关测试,展示改动摘要和未解决问题。
04

提交前审阅

Codex说已经完成,你准备验收。

请审阅当前未提交差异:检查正确性、回归风险、安全问题、遗漏测试和是否超出任务范围。先报告具体发现和文件位置;没有问题也要说明检查了哪些方面。不要修改文件。
05

授权一次提交

你已经看过 diff 和测试结果。

我已确认当前改动。请再次显示 git status 和 staged diff,只暂存【明确文件列表】,使用提交信息【明确提交信息】创建一次本地提交。不要包含其他文件,不要推送;提交后报告提交号和剩余工作区状态。
06

分析合并冲突

merge、pull 或 rebase 后出现冲突。

请逐个分析冲突文件:说明当前分支和另一侧各自意图、推荐的最终结果和理由。不要批量接受任何一侧;业务含义不明确时停下来问我。修改后运行相关验证,再报告仍未解决的冲突。
07

安全撤销

想撤销,但不确定内容在哪个 Git 区域。

我想撤销【描述改动】。请先判断它位于工作区、暂存区、本地提交还是远程共享历史,展示受影响文件,并给出数据保留最多的方案。未经明确确认,不要执行 restore、reset、clean、rebase、删除或强制推送。
08

30 分钟陪练

想通过实际操作形成 Git 直觉。

请充当零基础 Git 教练,带我在一个全新练习目录中完成:初始化、首次提交、功能分支、两次小提交、比较、合并和历史查看。一次只给一个步骤;先解释它改变四个区域中的哪一处,等我贴出结果再继续。

资料来源

命令和 Codex 用法都来自官方文档

教程以日常理解为主;需要精确参数时,请回到对应官方参考。