git diff与git diff HEAD -- file

http://blog.csdn.net/u013485584/article/details/53303858
最近,自己开始接触git。在学到git diff时,一直困惑。git diff到底比较的是那个两个文件之间的差异。经过在网上搜网,终于找到乐答案。
这里分为两种情况,一种是当暂存区中有文件时,另一种是暂存区中没有文件。
(1)当暂存区中没有文件时,git diff比较的是,工作区中的文件与上次提交到版本库中的文件。
(2)当暂存区中有文件时,git diff则比较的是,当前工作区中的文件与暂存区中的文件。
而 git diff HEAD -- file,比较的是工作区中的文件与版本库中文件的差异。HEAD指向的是版本库中的当前版本,而file指的是当前工作区中的文件。
补充:git diff命令比较的是工作目录中当前文件与暂存区快照之间的差异,也就是修改之后还没有暂存起来的变化内容。
注意:git diff本身只显示尚未暂存的改动,而不是自上次提交以来所做的所有改动。所以,有时候你一下子暂存了所有更新过的文件后,运行git diff后却什么也没有,就是这个原因。
如果要查看已暂存的将要添加到下次提交里的内容,可以使用git diff --cached或者git diff --staged。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 以下笔记主要参考gitgot,大致了解git使用和原理。 第一部分我们从个人的视角去研究如何用好Git,并且揭示G...
    carolwhite阅读 2,494评论 0 1
  • 10月11日晚,国足做客乌兹别克斯坦,“不出意外“地以0:2输给了此前2胜1负的中亚狼。国足在12强赛前4场中4战...
    希墨77阅读 392评论 6 2
  • 壬水通河,能泄金气,刚中之德,周流不滞,通根透癸,冲天奔地,化则有情,从则相济
    冰星星阅读 267评论 0 0
  • 近日,刘雯在秀场上大胆尝试了一套”白骨骷髅装“,只见一套白色镂空、酷似骷髅骨架的秀服牢牢的”穿在“刘雯身上。 网友...
    首席娱记阅读 1,001评论 0 0
  • 宝宝,爸爸的小情人! 爸爸很是羡慕妈妈每天能陪着你一起看书游戏,一起谈论中国古代的历史人物。宝宝现在越来越博学了,...
    Hayeknz阅读 519评论 7 10

友情链接更多精彩内容