Git

差异对比Diff

你可能会说

帮我看看这次到底改了哪几行,加了什么、删了什么。

把改动前后的内容逐行摆在一起,标出删了什么、加了什么例如 AI 修改首页后,对比视图会用 - 标出删除的旧内容,用 + 标出新增内容。保存版本前要检查还没选入清单和已经选入清单的两部分变化,避免把误删、调试内容或密钥一起保存。
改动前按钮文字− 点我
→
改动后按钮文字+ 立即开始
git diff

Diff 是改动清单:红色减号表示删掉的内容,绿色加号表示新增的内容。提交前看一遍,确认没有误删、调试内容或密钥。

组成结构 · Anatomy
📄 index.html @@ -12,5 +12,5 @@ - <button>点我</button> + <button class="btn btn-primary">立即开始</button>
这段改动属于哪个文件,一个文件一段
@@ -12,5 +12,5 @@:改动在第 12 行附近
红色带 - 号:旧版本有、新版本删掉的行
绿色带 + 号:新版本多出来的行
常见变体 · Variants
看未暂存改动git diff
git diff
查看工作区相对暂存区改了什么
看已暂存改动git diff --staged
git diff --staged
add 之后、commit 之前复核
比较最近两次提交git diff commits
git diff HEAD~1 HEAD
复核最近一次提交的具体变化
两个分支比git diff main..feat
git diff main..feat/dark-mode
合并前先看分支领先了多少
典型使用场景
终端 git diff
zsh — my-first-page
$ git diff diff --git a/index.html b/index.html @@ -12,5 +12,5 @@ - <button>点我</button> + <button class="btn btn-primary">立即开始</button> 红色带 - 是删的,绿色带 + 是加的
比较最近两个提交
zsh — my-first-page
$ git diff HEAD~1 HEAD --stat index.html | 10 ++++++---- style.css | 12 ++++++++++++ 2 files changed, 18 insertions(+), 4 deletions(-) $ git diff HEAD~1 HEAD 再查看逐行明细,确认本轮 AI 修改内容
GitHub Files changed 页
ConversationCommits 3Checks ✓Files changed 2
📄 index.html +18 −4
@@ -12,5 +12,5 @@
- <button>点我</button>
+ <button class="btn btn-primary">立即开始</button>
AI 修改后先 diff 再 commit
🤖 AI 完成一轮修改 → 🔍 git diff 逐行看 → ✅ git commit 提交记录
延伸阅读 · 权威出处