vim-fugitive side-by-side git diff is great for viewing diff of unstaged files.
How can i use vim-fugitive to git diff
Diff between current file and the index
:Gdiff :0
Diff between current file and some other [revision]
:Gdiff [revision]
Diff between current file and current file 3 commits ago:
:Gdiff ~3