Sodamhan.com

TL;DR

git diff

Show changes to tracked files. More information: https://git-scm.com/docs/git-diff.

  • Show unstaged changes:

git diff

  • Show all uncommitted changes (including staged ones):

git diff HEAD

  • Show only staged (added, but not yet committed) changes:

git diff --staged

  • Show changes from all commits since a given date/time (a date expression, e.g. “1 week 2 days” or an ISO date):

git diff 'HEAD@{3 months|weeks|days|hours|seconds ago}'

  • Show diff statistics, like files changed, histogram, and total line insertions/deletions:

git diff --stat commit

  • Output a summary of file creations, renames and mode changes since a given commit:

git diff --summary commit

  • Compare a single file between two branches or commits:

git diff branch_1..branch_2 [--] path/to/file

  • Compare different files from the current branch to other branch:

git diff branch:path/to/file2 path/to/file

This document was created using the contents of the tldr project.