git应用详解十:git diff

可以通过git diff命令来对比文件的修改点。

linux的diff命令

在介绍git diff命令之前,先看看linux提供的diff命令。
比如现在桌面上有a.txt,b.txt两个文件,比较两个文件的不同点:

diff -u a.txt b.txt 

在这里插入图片描述

--- a.txt	2019-08-11 16:59:07.000000000 +0800                          // 代表源文件
+++ b.txt	2019-08-11 16:59:18.000000000 +0800                     // 代表目标文件
@@ -1,2 +1,2 @@                           // -1,2 代表源文件的第一行开始,连续两行        +1,2同理
 line 1                                                // 前面是个空格,代表两个文件中这一行的内容相同
-line 2                                               // 前面是-,代表源文件删掉这一行
+line 3                                             // 前面是+,代表源文件增加这一行,就可以得到目标文件

如果理解这个,git的diff也就好理解了

git diff

git比较工作区和暂存区文件的差别

命令:

git diff

先创建一个文件并加入暂存区,然后再修改这个文件:
在这里插入图片描述
使用git diff命令比较工作区和暂存区文件的差别:
在这里插入图片描述
可以看到,和linux带的命令有所不同,由于linux中工作区和暂存区中的文件是同名的,所以git使用a/a.txt和b/a.txt来区分两个文件。
暂存区中的文件作文源文件,工作区的文件作为目标文件
就可以看出工作区和暂存区中第一行是一样的,暂存区中的文件增加一行hello git即与目标文件相同。
在这里插入图片描述

比较工作区和版本库文件的差异

命令:

git diff commit_id

将刚刚的a.txt提交,然后修改a.txt文件:
在这里插入图片描述
使用命令:

git diff 25dc      
git diff HEAD    // 如果是与最新的提交比较,commit id可以使用 HEAD代替

在这里插入图片描述

比较暂存区与版本库文件的差异

命令:

git diff -cached commit_id    // 如果与最新的提交比较可以使用HEAD代替commit_id或省略commit_id

将刚刚的修改加入暂存区:
在这里插入图片描述
比较:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值