git diff命令详解

diff里面a表示前面那个变量,b表示第二个变量

HEAD     commit版本
Index     staged版本

a、查看还没有暂存的文件更新了哪些部分,不加参数直接输入
    git diff
此命令比较的是工做目录(Working tree)和暂存区域快照(index)之间的差别
也就是修改以后尚未暂存起来的变化内容。

b、查看已经暂存起来的文件(staged)和上次提交时的快照之间(HEAD)的差别
    git diff --cached
    git diff --staged
显示的是下一次commit时会提交到HEAD的内容(不带-a状况下)


c、显示工做版本(Working tree)和HEAD的差异
    git diff HEAD


d、直接将两个分支上最新的提交作diff
    git diff topic master 或 git diff topic..master

e、输出自topic和master分别开发以来,master分支上的changed。
    git diff topic...master
Changes that occurred on the master branch since when the topic
 branch was started off it
f、查看简单的diff结果,能够加上--stat参数
    git diff --stat

g、查看当前目录和另一个分支的差异
    git diff test
显示当前目录和另外一个叫'test'分支的差异
    git diff HEAD -- ./lib
显示当前目录下的lib目录和上次提交之间的差异(更准确的说是在当前分支下)

h、比较上次提交commit和上上次提交
    git diff HEAD^ HEAD

i、比较两个历史版本之间的差别
    git diff SHA1 SHA2git

相关文章
相关标签/搜索