以下面的结果为例:
第一行表示 a 版本的 new.txt(变动前) 与 b 版本的 new.txt(变动后) 比较:
diff --git a/new.txt b/new.txt
第二行 index 后面两个数字表示两个文件的 hash 值(index 区域的 0e9cc9b 对象,与工作目录区域的 af0a351 对象进行比较)。最后的六位数字是对象的模式(100代表普通文件,644代表权限):
index 0e9cc9b..af0a351 100644
第三行表示进行比较的两个文件:
--- a/new.txt
+++ b/new.txt
"---
“表示变动前的版本,”+++
"表示变动后的版本。
第四行分为两个部分,第一个是-1,2,- 表示修改前,1,2 表示第一行开始的两行,后面的+ 1,3 表示修改后文件的第一行开始的三行内容:
@@ -1,2 +1,3 @@
剩下的是比较信息:
一行前面有 -
+
!
无状态,分别表示删、增、没有变动,按行进行差异显示。
-
红色部分表示减少的部分
+
绿色部分表示增加的部分
-“aaaaa” 表示删除第一行 “aaaaa”
+“aadaa” 表示增加一行 “aadaa”,与 -“aaaaa” 结合表示在第一行中将第三个字符 a 修改为了 d
“bbbbb” 表示没有变动
+ccccc 表示增加了一行 ccccc
对于 git diff 命令的结果,一定要能够独立看懂,烂熟于心。这个是基本功,必须非常扎实。
参考资料:
https://blog.csdn.net/Chasing__Dreams/article/details/108601964
https://blog.csdn.net/weixin_37909391/article/details/84641899
https://www.cnblogs.com/zcube/p/4194530.html
https://blog.csdn.net/u010900754/article/details/79602959