---
name: "git-history-coverage"
section: "1"
platform: "linux"
package: "ggcov"
version: "0.10-3"
release: "Debian 11 (Bullseye)"
platforms: ["linux"]
url: "https://new.carta.tech/git-history-coverage"
---

# git-history-coverage(1)

summarise test coverage for recent git commits

## NAME

git-history-coverage - summarise test coverage for recent git commits

## SYNOPSIS

**git-history-coverage** \[*options*\]  *rev-list*

## DESCRIPTION

**Git-history-coverage** extracts test coverage data produced by C and C++ programs compiled with *gcc --coverage*, and correlates it to git commits, printing a coverage summary which shows how well tested recent code changes have been.  This is useful for nightly builds and Continuous Integration systems such as Jenkins.

For the output of **git-history-coverage** to make any sense, the coverage data must be generated by running code which corresponds to the last commit in the range specified by *rev-list*.

When used without any options, **git-history-coverage** prints three summaries.

- **overall**

  A summary of all the commits specified by *rev-list*.

- **by author**

  A summary split up by each author represented in the set of commits specified by *rev-list*.

- **by commit**

  A summary for each individual commit in the set of commits specified by *rev-list*.

For each of these summaries, **git-history-coverage** prints statistics showing how many lines of code were in the commits, how many lines represent executable code (as opposed to comments, test code, or infrastructure like Makefiles), and how many lines were actually executed in tests.

## OPTIONS

- **--summary-overall**

  Print the **overall** summary (with no options, all three summaries are printed).

- **--summary-by-author**

  Print the **by author** summary (with no options, all three summaries are printed).

- **--summary-by-commit**

  Print the **by commit** summary (with no options, all three summaries are printed).

- **--gcda-prefix**=*dir*

  Look for *.gcda* files underneath the directory *dir*.  This option is used to read runtime coverage information written when a test program is run using the same *--gcda-prefix* option to **ggcov-run**.

## AUTHOR

Written by Greg Banks *\<gnb@fastmail.fm\>*.

## COPYRIGHT

ggcov is Copyright © 2001-2020 Greg Banks *\<gnb@fastmail.fm\>*.\
 This is free software; see the COPYING file for copying conditions.  There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

## SEE ALSO

[**ggcov-run**(1)](/ggcov-run/1.md).
