git diff a b与git diff b a的区别

git diff用的时间也挺久了,不过一直没有注意过git diff a b,和git diff b a有什么区别,用的也是稀里糊涂的,不就是比较a和b的不同么?两种比较方式会有什么不一样呢?

实际操作后,发现确实是两种不同的对比。

我们的a文件,内容如下:

1  
2  

b文件的内容为:

1  
3  

执行git diff a b,结果为:

diff --git a/a b/b  
index 1191247..2b2f2e1 100644  
--- a/a
+++ b/b
@@ -1,2 +1,2 @@
 1
-2
+3

如果是git diff b a,则结果为:

diff --git a/b b/a  
index 2b2f2e1..1191247 100644  
--- a/b
+++ b/a
@@ -1,2 +1,2 @@
 1
-3
+2

从结果不难看出git diff a b是基于a来看b有什么变化。

这次算是对git diff的用法比较清楚了。