CLI tool for Git history analysis, providing insights into repository evolution
Top 17.8% on sourcepulse
Hercules is a Go-based engine for deep Git repository analysis, designed for developers and researchers seeking insights into project evolution, team dynamics, and code contributions. It offers a highly customizable DAG of analyses, generating metrics like project burndown, code churn, and developer collaboration patterns, with a companion Python script for visualization.
How It Works
Hercules processes Git repositories using the go-git
library, executing a configurable Directed Acyclic Graph (DAG) of analysis tasks. It supports custom analyses via plugins and can merge results from multiple runs. The labours
Python script visualizes the data, offering features like resampling and custom plotting backends. This approach allows for comprehensive, single-pass analysis of complex Git histories.
Quick Start & Requirements
labours
: pip3 install labours
protoc
. Clone repo, run make
, then pip3 install -e ./python
.Highlighted Details
git-of-theseus
for burndown analysis.labours
for plotting, including support for Tensorflow Projector for embeddings.libtensorflow
and building Hercules with TAGS=tensorflow
).Maintenance & Community
CONTRIBUTING
and code of conduct.go-git/go-git
, updating docs, fixing bugs, and removing the Babelfish dependency.Licensing & Compatibility
Limitations & Caveats
--first-parent
, disk caching, or hibernation features.--pb
) is recommended as an alternative.2 years ago
Inactive