whodid

contribution check tool for git project

Usage no npm install needed!

<script type="module">
  import whodid from 'https://cdn.skypack.dev/whodid';
</script>

README

Overview

CLI contribution check tool from git repository. this tool read all log with git log command and count edited line from all commits.

demo

Features

  • aggregation of edited line from all commits by each author
  • aggregation of most edited file from all commits
  • find heaviest commit from commits of each author

Install

$ npm install -g whodid

Usage

befor run whodid you have to pull from git repository

$ cd your-proj-dir
$ git pull origin master

and then..

check most contributed author in 1.month

$ whodid author --cwd=<your-project-path> --since=1.month

check most modfied files

$ whodid file --verbose=false --cwd=<your-project-path> --since=1.month

Check what is most heavy commit of each author

$ whodid heavy --cwd=<your-project-path> --since=1.month

you can make it quiet or not with verbose flag

$ whodid author --cwd=<your-project-path> --since=1.month --verbose=false

Check working history

$ whodid history --since=1.month --author="sally"

JSON or CSV result

you can get json output with --output-as option

$ whodid --cwd=./ --output-as=json

or

$ whodid --cwd=./ --output-as=csv --csv-seprator="|"

Check evaluation process more precisely

$  whodid debug --commit=a1b2c3d

Check another options in help command.

$ whodid --help

Default action

$ whodid --cwd=./ --since=1.month --verbose --include-merge=false  --line-accept-max=1000

is same as

$ whodid

Setting with config file

most of option can be predefined in whodid.json.

{
    "ignore":[
            ".+.svg",
            ".+/bower_components/.+",
            ".+/node_modules/.+",
            ".+/__libs__/.+"
    ],
    "line_accept_max":1000, 
    "output_as":"csv", 
    "csv_seperator":", ",
}

ignore file speicification

To avoid counting of external library files or image files in commit,

Specify Regexp on whodid.json and make this file place in your project directory.