git 本地对比2次commit直接的差异

查看2个改动的细节

我们想查看两次提交之间的差异。可以用如下命令:xx1 ,xx2 是commit hash

git diff hash1 hash2 --stat  

这样显示的:

songchong@srv-artek-pad:~/mytest/songchong$ git diff xx1 xx2 --stat
 test  |    4 ++--
 test2 |    3 ++-
 2 files changed, 4 insertions(+), 3 deletions(-)
songchong@srv-artek-pad:~/mytest/songchong$

如果想查看 具体的文件的改动 : 

songchong@srv-artek-pad:~/mytest/songchong$ git diff xx1 xx2 test
diff --git a/test b/test
index 6d6cdbb..60781a8 100644
--- a/test
+++ b/test
@@ -1,6 +1,6 @@
-
+6666666666666666666
 llllllllllllllaaaa
-
+8888888888888888888
 
 dsfsdkgdfkghjjh
 
songchong@srv-artek-pad:~/mytest/songchong$

JSON 复制 全屏

 如果不想指定具体的文件,也可以直接使用

git diff xx1 xx2

这样就可以 他就会陆续展示 文件的改动

 

如果觉得diff 这样命令行显示的不太好看,那么可以使用git difftool

git difftool --tool=bc3  xx1 xx2

这样会使用byondcompare3 这个工具来进行gui 界面的展示2个文件的改动

bc3 需要安装好,如果没有的话,可以用 gvim,或者其他difftool支持的,具体--help 查看

 

查看已经提交的改动细节

如果你本地已经提交了commit ,但是你想确认当前这个commit的提交的改动,检查一下,那么采用如下步骤:

实际上就是查看当前HEAD 的commit 和 HEAD 上一个commit的对比,这样就知道 HEAD改动了什么。

直接使用bc3 看,gui 更友好。

# 先查看都改动了哪些文件:
git difftool --tool=bc3 HEAD~ --stat

# 查看具体的改动,一个一个文件的看:
git difftool --tool=bc3 HEAD~

# 或者,你从第一步看到了,文件的名字,那直接去看针对性的文件 xxx.py
git difftool --tool=bc3 HEAD~ xxx.py 

你可能感兴趣的