Git 操作手册(主题总纲)
更新时间:2026-08-25。本主题按 Git 子命令拆分讲解日常开发最常用的操作:每个文档聚焦一组子命令,从"命令在数据流中的位置"讲起,配合真实输出、对比表格与易错点。
本主题解决什么问题
Git 是代码协作的基础设施,但子命令众多、心智负担重。本文档按子命令分组,把"我想做什么"映射到"我用哪个命令":
| 我想… | 用哪篇 |
|---|---|
| 配置环境、建仓库、拿代码 | 配置 / 初始化 / 克隆 |
| 提交代码(核心循环) | 暂存与提交 |
| 查历史、看谁改了什么 | 历史与溯源 |
| 建分支、合并分支 | 分支与合并 |
| 与远端同步、协作 | 远程协作 |
| 撤销错误操作 | 撤销与回退 |
| 整理历史、搬运提交 | 历史改写 |
| 打标签、定位问题、救回提交 | 标签与排障 |
核心心智模型:三个区域
Git 的全部操作都发生在三个区域之间:工作区(你看到的文件)→ 暂存区(快照暂放地)→ 本地仓库(永久提交),再加上一个远程仓库(与他人共享)。

三个区域的本质:
| 区域 | 本质 | 对应命令 |
|---|---|---|
| 工作区 Working Tree | 磁盘上的真实文件 | git status 看变更 |
| 暂存区 Index/Staging | 下一次提交的候选快照 | git add 放入,git restore --staged 移出 |
| 本地仓库 Repository | 提交历史(不可变链表) | git commit 写入,git log 读取 |
记住:提交 (commit) 保存的是"整棵目录树的快照 + 指向父提交的指针",不是文件差异。Git 的高效与神奇(分支便宜、历史可任意改写)都源于此。
子命令全景

常用操作速查
| 场景 | 命令 |
|---|---|
| 看当前仓库状态 | git status |
| 提交全部变更 | git add -A && git commit -m "msg" |
| 提交已跟踪文件的变更 | git commit -am "msg" |
| 撤销工作区修改(危险) | git restore <file> |
| 撤销暂存(保留工作区) | git restore --staged <file> |
| 撤销最近一次提交(保留改动) | git reset --soft HEAD~1 |
| 撤销已推送提交(安全,推荐) | git revert <commit> |
| 新建并切换分支 | git switch -c feature/xxx |
| 拉取并变基 | git pull --rebase |
| 合并后推送 | git push(先 pull --rebase) |
| 清理未跟踪文件 | git clean -nd(先预览再 -fd) |
阅读建议
一句话总结:Git 的一切操作都是"在三个区域与远端之间移动快照",按子命令分篇记住各自的移动方向,遇到问题就知道该用哪个命令。