命令格式

git diff [options] [<commit>] [--] [<path>…​]

git diff [options] --cached [<commit>] [--] [<path>…​]

git diff [options] <commit> <commit> [--] [<path>…​]

git diff [options] <blob> <blob>

git diff [options] [--no-index] [--] <path> <path>

命令参数

--src-prefix=<prefix>
  指定源文件的前缀来代替 "a/"。

--dst-prefix=<prefix>
  指定目标文件的前缀来代替 "b/"。

--no-prefix
  不显示源文件与目标文件的前缀。

实例

a) 比较工作区与暂存区的差异。

$ git diff

b) 比较暂存区与上次提交的差异,显示的是下次不带 -a 选项的 commit 操作时提交的内容。

$ git diff --cached

c) 比较工作区与上次提交的差异,显示的是下次带 -a 选项的 commit 操作时提交的内容。

$ git diff HEAD

d) 比较当前工作区与 dev 分支的差异。

$ git diff dev

e) 比较当前工作区与上次提交的差异,但仅比较 ./src 文件(或目录)。

$ git diff HEAD -- ./src

f) 比较上上次提交与上次提交的差异。

$ git diff HEAD^ HEAD

g) 比较 dev 分支与 master 分支的差异。

$ git diff dev master    # or $ git diff dev..master

h) 显示自从 dev 分支从 master 分支新建后,maser 分支的变化。

$ git diff dev...master

i) 比较本地 master 分支与远程仓库 origin 的 master 分支的差异。

$ git diff master origin/master

更多

http://git-scm.com/docs/git-diff

Git CMD - diff: Show changes between commits, commit and working tree, etc的更多相关文章

  1. 痞子衡嵌入式:第一本Git命令教程(5)- 提交(commit/format-patch/am)

    今天是Git系列课程第五课,上一课我们做了Git本地提交前的准备工作,今天痞子衡要讲的是Git本地提交操作. 当我们在仓库工作区下完成了文件增删改操作之后,并且使用git add将文件改动记录在暂存区 ...

  2. git -c diff.mnemonicprefix=false -c core.quotepath=false -c credential.helper=sourcetree fetch origin

    git -c diff.mnemonicprefix=false -c core.quotepath=false -c credential.helper=sourcetree fetch origi ...

  3. Git log diff config高级进阶

    Git 历史相关和 git config 高级进阶 前一段时间分享了一篇<更好的 git log>简要介绍怎么美化 git log 命令,其中提到了 alias命令,今天再继续谈谈 git ...

  4. svn/git的diff、patch

    svn/git的diff.patch 前几天,正当我突突的写代码,企业微信嘀嘀一声响”在不,过来帮我看个bug”.本人一向助人为乐,高兴的冲了过去,然后就开始了一段长达1分钟的问题描述.很明显,此同学 ...

  5. Git CMD - status: Show the working tree status

    命令参数 git status [<options>…​] [--] [<pathspec>…​] 命令格式 --short, -s 短格式输出. -- long 长格式输出, ...

  6. git移除上一次的commit中误添加的文件

    在使用git进行版本管理时,往往会出现一些误操作,比如将一些不加上传的文件放到了暂存区,即上传到了上一次commit中 比如: commit c134ab90ca7c4daf8bfa22e3ad706 ...

  7. git删除某次提交(某个commit)的方法【转】

    本文转载自:https://www.36nu.com/post/275 git删除某次提交(某个commit)的方法 疯狂的兔子 发表于 4个月前 阅读 536 收藏 0 推荐 0 评论 0 推荐收藏 ...

  8. [SourceTree] - 提交代码失败 "git -c diff.mnemonicprefix=false -c core.quotepath=false" 之解决

    背景 使用 SourceTree 提交代码失败,尝试了重装 SourceTree 和 Git 问题依旧. 错误信息 git -c diff.mnemonicprefix=false -c core.q ...

  9. Git GUI,Git Bash,Git CMD之间的区别

    Git GUI,Git Bash,Git CMD之间的区别 Git Bash: Bash,Unix shell的一种,Linux与Mac OS X v10.4都将它作为默认shell.Git Bash ...

随机推荐

  1. 开源 免费 java CMS - FreeCMS1.5-信息管理

    下载地址:http://code.google.com/p/freecms/ 信息管理 1. 快速添加 从左侧管理菜单点击快速添加进入. 输入相关属性后添加“保存”按钮即可. 从FreeCMS 1.4 ...

  2. win8图片默认不显示

    最近,发现了一个问题,在查看图片的时候,出现了这样的情况: 查看的时候很不方便,想要找到自己需要的图片就要误打误撞,也不知道自己在哪儿设置了,于是,上网查资料,才发现其实只需要简单的该一下设置就可以了 ...

  3. UVa 112 Tree Summing

    题意: 计算从根到叶节点的累加值,看看是否等于指定值.是输出yes,否则no.注意叶节点判断条件是没有左右子节点. 思路: 建树过程中计算根到叶节点的sum. 注意: cin读取失败后要调用clear ...

  4. 记录一下跟Python有关的几个拓展名

    .py python文本源码文件,也可以用python.exe直接运行 .pyw 也是python的文本源码文件,但是默认由pythonw.exe打开,而且不显示命令行窗口,带GUI的python代码 ...

  5. php openssl 生成公私钥,根据网上文章整理的

    linux下没有问题,win下有报错 <?php$configargs = array("config" => "/usr/local/php/ext/ope ...

  6. Codeforces Round #280 (Div. 2) E. Vanya and Field 数学

    E. Vanya and Field Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/492/pr ...

  7. oracle批量导出AWR报告

    工作需求:项目中需要把生产库中所有的AWR报告dump出来,然后导入到方便测试的数据库中.在测试库中的AWR报告需要根据dbid和实例名逐个导出,如果遇到很多再加上RAC系统,会很麻烦.在网上找了一些 ...

  8. 安卓模拟器BlueStacks 安装使用教程(图解)

    系统要求 操作系统 Win XP SP3/Vista/Win 7/Win 8/Win 8.1 所需的运行环境 Win XP用户请先升级到SP3 并安装Windows Installer 4.5 Win ...

  9. Android腾讯微博开发之随机字符串与签名实现

    Android腾讯微博开发入门之随机字符串与签名实现   直接上代码   1.Utils类,包括签名和随机字符串   import java.util.Random; import javax.cry ...

  10. VRP相关知识整理

    一.扩展问题分类: ★ the capacitated vehicle routing problem (CVRP) , 即classical VRP ★ the vehicle routing pr ...