git diff 命令通过文件补丁的格式比较文件在暂存区和工作区具体地显示哪些行发生了改变。
实例说明
- 原文件
- 修改的文件
- git diff 命令输出
第一行:文件版本 a/README.md(原文件) b/README.md(修改后文件)
diff --git a/README.md b/README.md
第二行:index 后面两个数字表示两个文件的 hash 值:1eaeb4a(暂存区),01322ed(工作目录对象)。最后的六位数字是对象的模式(100代表普通文件,644代表权限)
index 1eaeb4a..01322ed 100644
第三四行:两个比较文件,"—“表示原文件版本,”+++"表示修改的版本。
--- a/README.md
+++ b/README.md
第五行:两个@@首尾分隔,“-44,7"中”-“表示原文件,第44行开始,往下连续7行。”+44,7"表示修改后的文件,第44行开始,往下连续7行。默认,显示修改位置的上下各三行。
@@ -44,7 +44,7 @@
最后显示内容:将原文件和修改后的文件合并显示,其中删除行用红色标记,并标记为"-“,表示删除了原文件的内容;绿色表示添加行,并标记为”+"
- git diff --staged
将比对已暂存文件与最后一次提交的文件差异