Git Diff Guide: Commits, Branches, Staged