Skip to main content

Git repository analytics CLI — commit activity, file churn, branch history, hotspots

Project description

gitaura

A Python CLI for git repository analytics. Visualize commit activity, analyze file churn, explore branch history, and discover where you work most—all from the terminal.

Installation

pip install gitaura
248 commits over 12 month(s)
2024-01     12 ▀▀▀▀▀
2024-02     28 ▀▀▀▀▀▀▀▀▀▀▀▀▀
2024-03     45 ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
...

Commands

Commit Activity

Command Description
(default) Bar chart of commits by period (day/week/month/year)
-p day Daily granularity
-p week Weekly (ISO week)
-p month Monthly (default)
-p year Yearly
-f Fill missing dates with zero-commit bars

File Analysis

Command Description
--files File type breakdown (% JS, TS, MD, etc.)
--churn File churn ranking (most modified files)
--hotspots Hotspot detection (high churn + many contributors)
--refactor Refactor density (balanced add/del ≈ refactoring)
--min-churn N Minimum churn for hotspots (default: 50)

Branch Analysis

Command Description
--branches Active branches ranked by recency
--stale Stale branches (no commits in N days)
--stale-days N Staleness threshold (default: 30)
--divergence Ahead/behind counts vs main
--branch-lifetime Creation → merge duration for merged branches
--merges Merge frequency timeline (aggregated)
--merge-timeline Timeline of branch merges (date + branch name)
--compare A B Compare two branches statistically
--main BRANCH Main branch for divergence/lifetime/merges (default: main or master)

Activity Map

Command Description
--work-map “Where do I work most?” — directory activity map

Global Options

Apply to most commands:

Option Description
-a, --after DATE After date (e.g. 2024-01-01)
-b, --before DATE Before date
-u, --author EMAIL Filter by author (substring match)

Examples

Commit bars by week, filtered by author

gitaura -p week -u "alice@company.com"

File type breakdown for 2024

gitaura --files -a 2024-01-01 -b 2024-12-31

Most modified files

gitaura --churn

Hotspots — high churn and many contributors

gitaura --hotspots --min-churn 100

Refactor vs feature density

gitaura --refactor

Stale branches (no activity in 60 days)

gitaura --stale --stale-days 60

Branch divergence from main

gitaura --divergence

Compare main and feature branch

gitaura --compare main feature-branch
gitaura --compare main origin/feature-branch

Where do I work most?

gitaura --work-map
gitaura --work-map -u "me@email.com"

Merge timeline

gitaura --merge-timeline

Output Notes

  • Weekend bars are colored blue in commit activity view.
  • Churn = lines added + lines deleted per file.
  • Refactor density uses “balanced” edits (adds ≈ dels) as a proxy for refactoring.
  • Hotspots combine churn and contributor count; files with both rank higher.
  • Work map shows directories by edit count and lines changed; hierarchy is indented.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gitaura-0.1.2.tar.gz (13.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gitaura-0.1.2-py3-none-any.whl (12.4 kB view details)

Uploaded Python 3

File details

Details for the file gitaura-0.1.2.tar.gz.

File metadata

  • Download URL: gitaura-0.1.2.tar.gz
  • Upload date:
  • Size: 13.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for gitaura-0.1.2.tar.gz
Algorithm Hash digest
SHA256 f2f6cea782a7bcd138418f6dc3f6743c11d2ae00dde317f21823fe5cea118337
MD5 78e2472e7d982f8f80e597f421e8c9db
BLAKE2b-256 95d0e4d8da876d9c4c755a0a322178c233618122e4a6523ab4219a0e54830aa1

See more details on using hashes here.

File details

Details for the file gitaura-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: gitaura-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 12.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for gitaura-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 b629ed135b2dadeb865622591afab82ef0494a4c59d1108eb078e12bf8f697cd
MD5 f249c68f5750269d4aa8ccc389a0ba3a
BLAKE2b-256 e9631e52c6c7046f2ed481bc6e23ecef2afab75cb8972a163c87a2e67cb709e9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page