LinuxCommandLibrary

git-summary

Summarize git repository information

TLDR

Display data about a Git repository

$ git summary
copy

Display data about a Git repository since a commit-ish
$ git summary [commit|branch_name|tag_name]
copy

Display data about a Git repository, merging committers using different emails into 1 statistic for each author
$ git summary --dedup-by-email
copy

Display data about a Git repository, showing the number of lines modified by each contributor
$ git summary --line
copy

SYNOPSIS

git summary [options]

PARAMETERS

-b, --branch=<branch>
    Specify branch to inspect (default: current branch)

-d, --date
    Sort authors by date instead of commit count

-l, --line-summary
    Show line summary instead of file summary

-a, --all
    Show summary for all branches

-h, --help
    Display help message

DESCRIPTION

The git summary command, part of the git-extras package, generates a concise overview of a Git repository's activity. It displays total files changed, lines added and removed, followed by a contributor breakdown showing commits, files modified, and net line changes per author.

Typical output includes:
- Project name and aggregate stats (e.g., '1048 files changed, 123456 insertions(+), 7890 deletions(-)').
- Per-author stats sorted by commit count (e.g., '1234 Alice (85.2%): 1000 files, +100k/-5k lines').

This tool is ideal for quick repo health checks, sprint reviews, or crediting contributors. It focuses on the specified branch (default: current) and supports sorting by date or line summaries. Unlike git shortlog, it emphasizes quantitative stats over commit messages.

Installation: Available via package managers like brew install git-extras (macOS), apt install git-extras (Debian/Ubuntu), or direct clone from GitHub.

CAVEATS

Requires git-extras package; not in core Git. Output based on parsed log data, may vary with repo size.

EXAMPLE USAGE

git summary
project: myrepo
1048 files changed, 123456 insertions(+), 7890 deletions(-)

Commit breakdown:
1234 Alice (85.2%): 1000 files, +100k/-5k lines
210 Bob (14.8%): 48 files, +23k/-2.8k lines

INSTALLATION NOTE

Install via: sudo apt install git-extras (Ubuntu), brew install git-extras (macOS), or git clone git://github.com/tj/git-extras.git.

HISTORY

Part of git-extras, a third-party Git utilities collection initiated around 2010 by Aristocratos and maintained by community contributors on GitHub. git summary added early to address need for quick contributor stats.

SEE ALSO

git shortlog(1), git log(1), git effort(1)

Copied to clipboard