In brief
Plain git diff shows unstaged changes against the index. git diff --cached shows staged changes against a commit, normally HEAD.
Useful to know
Plain git diff shows unstaged changes against the index. git diff --cached shows staged changes against a commit, normally HEAD. [1]
An empty plain diff therefore does not prove there is nothing to commit. Establish whether the review concerns working files, the index or two historical versions. Otherwise, the right file may be reviewed while different contents are actually recorded.
Sources
For further detail and to check the information: