git-summary
Summarize git repository information
TLDR
Display data about a Git repository
Display data about a Git repository since a commit-ish
Display data about a Git repository, merging committers using different emails into 1 statistic for each author
Display data about a Git repository, showing the number of lines modified by each contributor
SYNOPSIS
git summary [
PARAMETERS
-h, --help
Displays the help message and exits.
-a, --all
Includes information for all local and remote branches.
-c, --color
Forces color output, even if not detected automatically.
-p, --porcelain
Outputs the summary in a machine-readable format for scripting.
-s, --sort
Sorts branches alphabetically by name instead of by activity.
-v, --verbose
Shows more detailed information, such as full commit messages.
-q, --quiet
Suppresses warnings and other non-critical output.
--no-fetch
Prevents fetching from remotes before displaying the summary.
--exclude
Excludes branches whose names match the specified pattern.
--format
Specifies a custom output format using placeholders.
--include-gitmodules
Includes a summary of the .gitmodules file.
--status
Explicitly shows the status for the current branch (default behavior).
--no-submodules
Omits information about submodules from the summary.
--no-stash
Excludes information about stashed changes.
--no-divergence
Disables showing divergence information between local and tracking branches.
--exclude-remotes
Excludes all remote-tracking branches from the output.
--only-remotes
Only displays information for remote-tracking branches.
--include-untracked
Includes untracked files in the local changes status.
DESCRIPTION
The git-summary command provides a concise overview of a Git repository's current state. It displays essential information including the active branch, its tracking status, divergence from the remote, and details about the latest commit. Additionally, it highlights local changes by showing staged, unstaged, and untracked files. The summary also includes information about the repository's remotes, the latest tag, and the status of any submodules. This tool is particularly useful for developers who need a quick snapshot of their project's health and pending changes without having to run multiple Git commands like `git status`, `git branch`, and `git remote -v`. It helps in quickly assessing the repository's readiness for commits, pushes, or pulls.
CAVEATS
The git-summary command is not a core Git command. It is typically provided by external Git extension packages, such as git-extras. Therefore, its availability depends on whether such a package is installed on your system. The exact features and options might vary slightly between different versions or implementations of git-extras.
<B>USAGE PHILOSOPHY</B>
git-summary is designed to be a quick glance tool. It prioritizes speed and conciseness, providing most of the necessary information to understand the current state of a repository without requiring the user to piece together data from multiple core Git commands. It's often used as a daily check for developers to ensure their working directory is clean or to understand the state of their branches before performing major operations.
HISTORY
git-summary emerged as part of the broader git-extras project, a collection of community-contributed Git utilities designed to augment Git's built-in functionality. The git-extras project began around 2011 and has since grown to include hundreds of convenient commands, with git-summary being one of the most popular for quickly assessing repository state. It addresses a common need for a single command to provide a comprehensive project overview, streamlining workflows for many developers.
SEE ALSO
git(1), git-status(1), git-branch(1), git-remote(1)