GitBlow is a simply script that analyzes your Git repository history and present its progression.
The easiest way to install GitBlow is using Nix:
# Run directly without installing
nix run github:willyrgf/gitblow
# Or install it to your profile
nix profile install github:willyrgf/gitblow
- Clone the repository:
git clone https://github.com/willyrgf/gitblow.git
cd gitblow
- Install dependencies:
pip install bokeh gitpython numpy
- Run the script:
python gitblow.py
Navigate to any Git repository and run:
gitblow
Or analyze a specific local repository:
gitblow --repo-path /path/to/repository
# or with short option
gitblow -p /path/to/repository
You can also analyze a remote repository without cloning it manually:
gitblow --repo-url https://github.com/user/repo.git
# or with short option
gitblow -u https://github.com/user/repo.git
For large repositories, you can limit the number of commits to analyze:
gitblow --max-commits 100
# or with short option
gitblow -m 100
GitBlow provides an interactive HTML visualization that adapts based on the size of your repository:
-
Adaptive Layout: For repositories with many commits (>50), GitBlow automatically switches to a scatter plot visualization with connecting stems to prevent visual clutter.
-
Time Range Selection: All visualizations include a date range slider that allows you to focus on specific time periods in your repository history.
-
Interactive Tooltips: Hover over any data point to see detailed information about the commit, including hash, author, message, and exact numbers.
-
Repository-named Output: Visualization files are automatically named with the repository name and timestamp for easy identification.
This project is licensed under the MIT License - see the LICENSE file for details.