| 命令 | 说明 |
git log --oneline --graph --decorate --all -20 | 图形化查看全部分支的最近 20 条历史(最常用) |
git log -p <文件> | 查看该文件的修改历史及每次 diff |
git log --grep="关键词" | 按提交说明搜索(--author 按作者) |
git log -S "函数名" | 按代码增删搜索(pickaxe:定位某代码何时引入 / 删除) |
git show <提交> | 查看某次提交的完整改动 |
git diff | 未暂存的改动;--cached 看已暂存;<c1> <c2> 比较两次提交 |
git blame -L 10,20 <文件> | 逐行追溯最后修改者与提交(限定 10-20 行) |
git diff --stat | 差异统计概览(每个文件改了多少行) |
git log -5 | 只看最近 n 条提交(数字随意换) |
git log --reverse | 从最旧到最新正序显示 |
git log -L :函数名:<文件> | 追踪一个函数 / 指定行的完整演变(重构排查利器) |
git diff -w | 忽略空白字符差异,聚焦真实改动 |
git diff --name-only | 只列出改动的文件名 |
git blame -w | 追溯时忽略纯空白改动,定位更准 |