要想理解本文,必须先学会《Git: 工作区、暂存区、本地仓库、远程仓库》
git diff : 比较工作区和暂存区之间的差异(git add)
- 工作准备
- 修改工作区的内容(vim file,添加两行…),执行git diff
- 执行git add,将工作区的内容提交到暂存区(此时,工作区和暂存区的内容相同),再执行git diff
git diff HEAD [ <path> … ] :比较工作区与最新本地仓库之间的差异
- 准备工作:提交之前的vim file
- 修改工作区的file文件,执行git diff HEAD file,查看工作区与本地仓库之间的差异
git diff --cached [ <path>… ] :比较暂存区与最新本地仓库(本地仓库最近一次commit的内容)的差异
- 执行git add将修改添加到暂存区,执行git diff --cached比较暂存区和本地仓库的差异
git diff commit-id [ <path>… ] :比较工作区与指定commit-id的差异
git diff --cached [ <commit-id> ] [ <path>… ] :比较暂存区与指定commit-id的差异
git diff [ <commit-id> ] [ <commit-id> ] :比较两个commit-id之间的差异