git diff --name-status

Lists changed files with codes indicating added, modified, or deleted status.

This command is useful for quickly identifying which files have been added, modified, or deleted by showing each filename with a status code.

The --name-status flag changes output to list each changed file prefixed by a single-letter code (A for added, M for modified, D for deleted) instead of showing full diffs, and by default it compares the working directory against the staging area; you can also specify revision ranges or use --cached (aka --staged) to compare the index to the last commit.

Variations and similar commands include git diff --name-only to list only filenames without status codes, git diff HEAD --name-status for staged changes versus the last commit, git status -s for a concise summary of all change states, and git log --name-status to view file change statuses across commit history.

Related commands

Welcome to GitExamples!

Sign in to enable bookmarking, reminders, progress-tracking and more...