ejwa / gitinspector

:bar_chart: The statistical analysis tool for git repositories
GNU General Public License v3.0
2.35k stars 324 forks source link

Grading option #188

Closed patriciainez closed 5 years ago

patriciainez commented 5 years ago

Hi there.

Could one of you please give me a little bit of explanation about the grading option besides what is in the documentation page?

"Show statistics and information in a way that is formatted for grading of student project; this is the same as supplying -HlmrTw."

I generated a few reports with and without this options and I notice that - in some cases - the numbers in the first two tables are quite lower when the analysis is run with this option.

For instance, here are the numbers for an analysis generated with ---grading=false

Author | Commits | Insertions | Deletions | % of changes |
Person A | 9 | 611 | 139 | 7.58 |
Person B | 12 | 828 | 105 | 9.43 |
Person C | 5 | 486 | 99 | 5.91 |
Person D | 3 | 55 | 22 | 0.78 |
Person E | 41 | 3768 | 2817 | 66.57 |
Person F | 2 | 31 | 24 | 0.56 |
Person G | 3 | 235 | 3 | 2.41 |
Person H | 4 | 282 | 144 | 4.31 |
Person I | 3 | 137 | 106 | 2.46 |

Author | Rows | Stability | Age | % in comments |
Person A | 501 | 82 | 0 | 2.79 |
Person B | 405 | 48.9 | 0.5 | 1.98 |
Person C | 346 | 71.2 | 0.2 | 31.5 |
Person D | 21 | 38.2 | 0.6 | 33.33 |
Person E | 1591 | 42.2 | 0.2 | 24.45 |
Person F | 25 | 80.6 | 0.6 | 52 |
Person G | 111 | 47.2 | 0.4 | 0 |
Person H | 223 | 79.1 | 0.2 | 12.56 |

Author | 2018W33 | 2018W34 | 2018W35 | 2018W36 | 2018W37 Modified Rows: | 3100 | 512 | 2000 | 4138 | 142

And here are the numbers for the same report generated with --grading=true.

Author | Commits | Insertions | Deletions | % of changes |
Person A | 9 | 611 | 139 | 11.97 |
Person B | 12 | 700 | 67 | 12.24 |
Person C | 5 | 486 | 99 | 9.34 |
Person D | 3 | 55 | 22 | 1.23 |
Person E | 40 | 2033 | 1325 | 53.6 |
Person F | 2 | 31 | 24 | 0.88 |
Person G | 3 | 235 | 3 | 3.8 |
Person H | 4 | 165 | 27 | 3.06 |
Person I | 3 | 137 | 106 | 3.88 |

Author | Rows | Stability | Age | % in comments |
Person A | 487 | 79.7 | 0.1 | 2.05 |
Person B | 448 | 64 | 2.4 | 1.79 |
Person C | 329 | 67.7 | 0.9 | 30.4 |
Person D | 31 | 56.4 | 2.6 | 29.03 |
Person E | 1555 | 76.5 | 1.2 | 25.27 |
Person F | 36 | 116.1 | 2.7 | 61.11 |
Person G | 114 | 48.5 | 1.7 | 2.63 |
Person H | 223 | 135.2 | 1.2 | 10.31 |

Author | 2018W33 | 2018W34 | 2018W35 | 2018W36 | 2018W37 Modified Rows: | 1155 | 393 | 1675 | 2918 | 124

Thanks a lot in advance. Patricia

adam-waldenberg commented 5 years ago

Hi @patriciainez

As stated in the documentation, --grading is just a shortcut/alias for the options -HlmrTw. There isn't anything special about it. To answer your questionn --grading=true will enable the -H/--hard option which will recursively look for ownership of rows. Basically, it will look through the whole history, when looking after who is the original author of a certain row. It's also better att finding duplicate rows... This is why you are seeing differences. The documentation of gitinspector states;

Track rows and look for duplicates harder. In essence, this passes additional -C (and -M)
options to the git executable.