📊 The statistical analysis tool for git repositories
Clone or download
adam-waldenberg Fix logic error in the threading code of the changes module (Fixes #118
…).

This particular problem is also briefly mentioned in issue #115. The
fix resolves the overflow problem resulting in an array with a dangling
"None" type at the end. It also takes care of a race condition where
two threads by accident could update the same data.
Latest commit 6d77989 May 14, 2017

README.md

Latest release License

 About Gitinspector

Gitinspector is a statistical analysis tool for git repositories. The default analysis shows general statistics per author, which can be complemented with a timeline analysis that shows the workload and activity of each author. Under normal operation, it filters the results to only show statistics about a number of given extensions and by default only includes source files in the statistical analysis.

This tool was originally written to help fetch repository statistics from student projects in the course Object-oriented Programming Project (TDA367/DIT211) at Chalmers University of Technology and Gothenburg University.

Today, gitinspector is used as a grading aid by universities worldwide.

A full Documentation of the usage and available options of gitinspector is available on the wiki. For help on the most common questions, please refer to the FAQ document.

Some of the features

  • Shows cumulative work by each author in the history.
  • Filters results by extension (default: java,c,cc,cpp,h,hh,hpp,py,glsl,rb,js,sql).
  • Can display a statistical timeline analysis.
  • Scans for all filetypes (by extension) found in the repository.
  • Multi-threaded; uses multiple instances of git to speed up analysis when possible.
  • Supports HTML, JSON, XML and plain text output (console).
  • Can report violations of different code metrics.

Example outputs

Below are some example outputs for a number of famous open source projects. All the statistics were generated using the "-HTlrm" flags.

Project name
Django HTML HTML Embedded Plain Text XML
JQuery HTML HTML Embedded Plain Text XML
Pango HTML HTML Embedded Plain Text XML

The Team

  • Adam Waldenberg, Lead maintainer and Swedish translation
  • Agustín Cañas, Spanish translation
  • Bart van Andel, npm package maintainer
  • Bill Wang, Chinese translation
  • Christian Kastner, Debian package maintainer
  • Jiwon Kim, Korean translation
  • Kamila Chyla, Polish translation
  • Luca Motta, Italian translation
  • Philipp Nowak, German translation
  • Sergei Lomakov, Russian translation
  • Yannick Moy, French translation

We need translations for gitinspector! If you are a gitinspector user, feel willing to help and have good language skills in any unsupported language we urge you to contact us. We also happily accept code patches. Please refer to Contributing for more information on how to contribute to the project.

Packages

The Debian packages offered with releases of gitinspector are unofficial and very simple packages generated with stdeb. Christian Kastner is maintaining the official Debian packages. You can check the current status on the Debian Package Tracker. Consequently, there are official packages for many Debian based distributions installable via apt-get.

An npm package is provided for convenience as well. To install it globally, execute npm i -g gitinspector.

License

gitinspector is licensed under the GNU GPL v3. The gitinspector logo is partly based on the git logo; based on the work of Jason Long. The logo is licensed under the Creative Commons Attribution 3.0 Unported License.