git diff 使用
git diff 是 Git 中用于比较代码差异的核心命令,可以查看工作区、暂存区、不同提交或分支之间的差异。以下是其常见使用场景和参数详解:
基础用法
1. 工作区 vs 暂存区(默认行为)
git diff
- 显示 工作区(已修改但未暂存的文件)与 暂存区(已
git add的文件)之间的差异。
2. 暂存区 vs 最新提交
git diff --staged
# 或
git diff --cached
- 显示 暂存区 与 最新提交(
HEAD)之间的差异。
3. 工作区 vs 最新提交
git diff HEAD
- 显示 工作区 与 最新提交 之间的差异(包含未暂存的修改)。
比较历史提交
1. 两个提交之间的差异
git diff <commit1> <commit2>
- 比较两个提交的差异,例如:
git diff abc123 def456 # 比较两个提交哈希 git diff HEAD~2 HEAD # 比较前两次提交与最新提交
2. 某次提交的更改
git diff <commit>^ <commit>
- 查看某次提交(如
abc123)与其父提交的差异:git diff abc123^ abc123
限定比较范围
1. 比较指定文件
git diff <file-path>
- 仅比较工作区中某个文件的差异:
git diff src/app.js
不以交互方式展示
git --no-pager diff
这会临时禁用 Git 的分页器(如 less),直接将差异内容输出到终端。
留下评论