Note_Tech

All technological notes.


Project maintained by simonangel-fong Hosted on GitHub Pages — Theme by mattgraham

Git - 比较差异 git diff

目录

总结

无参数: 比较工作区与缓存区差异

命令

git diff

代码说明:

  1. 查询状态, 返回所有文件状态是A,即已缓存;
  2. 修改stage3_py;
  3. 查询状态,返回stage3_py的状态是AM,即已缓存被修改;
  4. 比较差异,返回工作区与缓存区差异。

图片1

回到目录


参数cached: 比较缓存区与HEAD的差异

命令

git diff --cached

代码说明:

  1. 查询状态,显示当前工作区有修改,但未缓存;
  2. 使用cached,返回为空。即缓存区=HEAD;
  3. Add缓存到缓存区;
  4. 查询状态,显示修改已缓存;
  5. 使用cached,显示缓存区与HEAD的差异。

图片2

回到目录


参数HEAD: 比较工作区与指定HEAD的差异

命令

git diff <HEAD>

代码说明:

  1. 查询状态,当前工作区有修改;
  2. 查询log,显示当前的HEAD;
  3. 适用参数HEAD,显示工作区与当前HEAD的差异。
  4. 最后适用cached,返回为空。即当前工作区>缓存区=HEAD

图片3

回到目录


参数HEAD1 HEAD2:比较两个版本

命令

git diff <HEAD1> <HEAD2>

代码说明:比较最新版本次新版本。 减号表示次新版比最新版少。即最新版本比次新版本多。

图片4

将参数调换,则显示为加号;

图片5

回到目录


参数<filename>: 查看指定文件的差别

命令

git diff <filename>
  • 注意: <filename>放在其他参数后。

回到目录


参数stat:以简短的形式返回差异

命令

git diff --stat

图片6

回到目录


返回Git首页