20 releases

0.1.19 Dec 19, 2024
0.1.18 Oct 1, 2024
0.1.17 Aug 10, 2024
0.1.16 May 3, 2024
0.1.5 Nov 23, 2022

#364 in Command line utilities

Download history 12/week @ 2024-09-14 14/week @ 2024-09-21 146/week @ 2024-09-28 25/week @ 2024-10-05 10/week @ 2024-10-12 2/week @ 2024-10-19 4/week @ 2024-11-02 22/week @ 2024-11-16 4/week @ 2024-11-23 12/week @ 2024-11-30 13/week @ 2024-12-07 115/week @ 2024-12-14 31/week @ 2024-12-21 90/week @ 2024-12-28

249 downloads per month

BlueOak-1.0.0

19KB
336 lines

📊
git stats

A tool for getting aggregated commit stats.


Git Stats parses log information to get stats about the files changed, additions, and deletions. For example:

$ git stats -r origin..HEAD
 Author           Commits  Changed Files  Insertions  Deletions  Net Δ
 Luke Hsiao            67            117       +2616      -1126  +1490
 dependabot[bot]       31             62        +203       -267    -64
 Total                 98            179       +2819      -1393  +1426

 Reviewer/Tester  Commits
 Luke Hsiao             1

Install

This is a glorified shell script. As such, it expects that you have git, sort, and uniq installed on your machine and in your $PATH.

From crates.io

cargo install git-stats --locked

Usage

A tool for getting aggregated commit stats

Usage: git-stats [OPTIONS] [revision-range]

Arguments:
  [revision-range]  Show only commits in the specified revision range [default: HEAD]

Options:
  -e, --email            Show the email address of each author
  -r, --reviews          Show who reviewed/tested commits based on `Acked-by`, `Tested-by`, and `Reviewed-by` git trailers
  -s, --sort <SORT>      What column to sort by [default: commits] [possible values: author, commits, files, insertions, deletions, net]
      --reverse          Whether to reverse the sorting from descending to ascending
  -a, --author <AUTHOR>  Limit the commits output to ones with author header lines that match the specified pattern (regular expression)
      --since <SINCE>    Limit the commits output to ones more recent than a specific date
      --until <UNTIL>    Limit the commits output to ones older than a specific date
  -h, --help             Print help (see more with '--help')
  -V, --version          Print version

TODO

  • [] It would be nice to support all git log flags automatically, just passing them through directly and then doing the math only.

Dependencies

~8–17MB
~254K SLoC