/relstat

Make the statistics of the changes in each release of a project.

Primary LanguagePythonGNU General Public License v2.0GPL-2.0

This repo is DEPRECATED.  Please use
https://github.com/sjp38/lazybox/blob/master/git_helpers/relstat.py instead.

---


Make the statistics of the changes in each release of a project.


Getting Started
===============

Raw output
----------

```
/* Set PATH to point to this directory */
$ cd <your project>
$ relstat.py
```

This command will show the diff stat of each release in latest 6 months and the
master branch, if it is updated within 6 months.  For example, the command on
linux repo shows below output:
```
               version      files  deletions insertions       diff
  v5.5-rc3(2019-12-23)          0          0          0          0
  v5.5-rc4(2019-12-29)         62        570        823       1393
  v5.5-rc5(2020-01-05)        197        921       1378       2299
  v5.5-rc6(2020-01-13)        244        864       1577       2441
  v5.5-rc7(2020-01-20)        291       2230       2319       4549
      v5.5(2020-01-27)        200       1131       2695       3826
  v5.6-rc1(2020-02-10)      10609     261234     566486     827720
  v5.6-rc2(2020-02-16)        381       5646       8852      14498
  v5.6-rc3(2020-02-24)        412       4132       4400       8532
  v5.6-rc4(2020-03-01)        218       1328       2561       3889
  v5.6-rc5(2020-03-09)        343       1738       3078       4816
  v5.6-rc6(2020-03-15)        297       1068       2561       3629
  v5.6-rc7(2020-03-23)        121        436        927       1363
      v5.6(2020-03-29)        297       1478       3239       4717
  v5.7-rc1(2020-04-12)      10762     277749     541286     819035
  v5.7-rc2(2020-04-19)        332       2150       3258       5408
  v5.7-rc3(2020-04-26)        462       2564       4818       7382
  v5.7-rc4(2020-05-03)        162        605       1290       1895
  v5.7-rc5(2020-05-10)        306       1433       3097       4530
  v5.7-rc6(2020-05-17)        355       1516       2991       4507
  v5.7-rc7(2020-05-24)        270        976       2068       3044
      v5.7(2020-05-31)        174        836       1497       2333
    master(2020-06-05)      11245     343546     733938    1077484
                 # avg       1715      41552      86143     127695
                 # min         62        436        823       1363
                 # max      11245     343546     733938    1077484
               # total      37740     914151    1895139    2809290
```

Please use '--help' option for detailed usage.


Visualization
-------------

You may also visualize the output using any plot tools.  For example, below
gnuplot commands would be used.

```
set autoscale;
set term pdf noenhanced;
set xtics rotate by -90;
set logscale y;
plot for [i=0:3] "your_relstat.py_output" index i using 2:xtic(1)
	with linespoints title columnheader(1);
```

The output would be something like:
https://twitter.com/sjpark0x00/status/1269588136935505920