理解 Git Diff 命令
你确定自己会git diff 吗?
在 git 提交过程中,存在三大环节:
- working tree
- index file (staged)
- commit
这三大环节中,你应该有一个大概的了解:
- working tree:就是你所工作在的目录,每当你在代码中进行了修改,working tree 的状态就改变了。
- index file:是索引文件,它是连接
working tree和commit的桥梁,每当我们使用git add命令来登记修改的文件后,index file的内容就改变了,此时index file就和working tree同步了。 - commit:这是提交更改完成的最后阶段,commit 后我们的代码才真正进入了 git 仓库。我们使用
git commit就是将index file里的内容提交到commit中。
总结一下:
- git diff:是查看
working tree与index file的差别。 - git diff –cached:是查看
index file与commit的差别。 - git diff HEAD:是查看
working tree和commit的差别。(你一定没有忘记,HEAD 代表的是最近的一次 commit 的信息)
参考文档: http://www.cnblogs.com/Alight/p/3571042.html
This post is licensed under CC BY 4.0 by the author.