@oresoftware/fame

Provides git committer stats via command line.


Keywords
typescript, library, skeleton, scaffold, cli-table, command-line, command-line-tool, git, git-log, json, nodejs, npm
License
ICU
Install
npm install @oresoftware/fame@0.0.110

Documentation

🎟 Fame - a tool for displaying git log information by author

- Fame Fame Fame Fame Fame Fame Fame Fame Fame Fame Fame Fame Fame Fame Fame Fame Fame Fame Fame Fame

This command line tool is similar to git fame, but this is much faster. People were complaining that the ruby/python tools were too slow, so I wrote this.

Installation

$ npm install -g fame

For latest version, use: npm view fame version







Basic Usage

By default, a table is printed to the console. If you want JSON output, use the --json flag.

fame --json

Info for all commits by "alex"

fame --author=alex

Info for all commits on dev branch by a particular author

fame --branch=dev --author=alex

Info for all commits for multiple authors

fame --author=donnie --author=ronnie --author=jonnie

More options

Handling multiple email addresses for same person.
fame --add-user <display name> -e <email> 

now, when fame runs at the command line, it will pick up the info from this file ($HOME/fame.conf.json), to combine info from the different emails.

You can add multiple emails like so:

fame -u <display name> -e <email> -e <email> 

Sorting with --order and --sort options

You can sort using the --sort and --order options.

For example:

fame --sort=1 --order=asc  # will sort by the the 2nd column, ascending
fame --sort=2,3 --order=desc  # will sort by the the 3rd and 4th column, with the 3rd column the priority

Or for example, instead of numbers you can also just use the name (case-insensitive) of the column:

fame --sort='added lines, files modified' --order=asc

Comma-separated list, case-insensitive and whitespace-insensitive


Matching on files (ignoring files too)

Info for all matching files

fame --match='\.js'


Info for all files that end with

fame --extension='.js'  # better to just use the regex option tho

Example

To match all .ts files but no .d.ts files, you would do:

fame --match='\.ts$'  --not-match='\.d\.ts$'

Remember these strings are passed to new RegExp() so have to escpae the . etc.


Basic command line table output looks like this:

Command line JSON output looks like this: