比较文件差异diff

  • 知识点排列
  • 准备工作
  • 一、add暂存前的比较
  • 1.在工作区修改diff_test.c
  • 2.暂存前对比单个文件
  • 一、add后和版本库中的内容比较
  • 1.add到暂存区
  • 2、对比单个文件
  • 3、对比所有内容


准备工作

创建diff_test.c

gitlab 对比代码 git怎么对比代码_github


添加到暂存区:

gitlab 对比代码 git怎么对比代码_git_02


commit到本地库 :

gitlab 对比代码 git怎么对比代码_git_03

一、add暂存前的比较

1.在工作区修改diff_test.c

这里偷了个懒:

gitlab 对比代码 git怎么对比代码_git_04

2.暂存前对比单个文件

对比当前工作区中修改过后的diff_test.c和之前已添加到暂存区中的diff_test.c

gitlab 对比代码 git怎么对比代码_gitlab 对比代码_05


可以看到,git以行作为最小的管理单位,所以在增加的int b=1; 这一行前增加了一个“+”的标识

一、add后和版本库中的内容比较

1.add到暂存区

我们将刚刚修改过的diff_test.c 添加到暂存区,在git diff 试试

gitlab 对比代码 git怎么对比代码_git_06


会发现没有什么对比了

也就是说,diff 默认是将工作区的文件和暂存区的文件进行对比,那么此时如果我们还想继续对比,就可以直接和版本库中的内容对比了

2、对比单个文件

当前工作区中修改过后add到暂存区的diff_test.c与版本库中的diff_test.c作对比

那我们先来看看版本库

gitlab 对比代码 git怎么对比代码_git_07

现在和第一次提交的版本库中的diff_test.c作对比,此时我们得加点后缀了

如下:

gitlab 对比代码 git怎么对比代码_gitlab 对比代码_08


当然如果和之前的更早的版本作对比,只需要改变" HEAD^ "中的“ ^ “的个数即可,“ ^ “表示版本向历史回退。

3、对比所有内容

git diff 后不指定文件名表示对比所有内容

如果我们想对比当前工作区相对于最新版的前一个历史版本所有内容的差异,我们可以进行如下操作

gitlab 对比代码 git怎么对比代码_git_09