Skip to content

codeGROOVE-dev/git-churnrate

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

git-churnrate

Analyze code churn in Git repositories to measure codebase stability.

Installation

go install github.com/codeGROOVE-dev/git-churnrate/cmd/churnrate@latest

Usage

churnrate https://github.com/owner/repo.git
churnrate --days 60 /path/to/repo
churnrate --org kubernetes --days 30

Example Output

  Repository:           https://github.com/chainguard-dev/apko.git
  Codebase Size:        51,592 lines
  Git Depth:            980 commits (earliest: 2022-02-28)
  Analysis Window:      28 days (4 weeks)

  Total Churn:          688 lines changed
  Total Churn Rate:     1.33%
  Average Weekly Churn: 172 lines/week
  Weekly Churn Rate:    0.33%

  Top 4 Highest Churn Weeks:
    2025-11-03  +155 -167  (322 total)
    2025-11-10  +145 -46  (191 total)
    2025-10-27  +75 -72  (147 total)
    2025-11-17  +20 -8  (28 total)

Metrics

  • Weekly Churn Rate: Average lines changed per week as percentage of codebase
  • Total Churn Rate: Total lines changed as percentage of codebase
  • Git Depth: Shallow clone depth (days × 35 commits)

Programmatic Use

import "github.com/codeGROOVE-dev/git-churnrate/pkg/churnrate"

ctx := context.Background()
metrics, err := churnrate.Analyze(ctx, "https://github.com/owner/repo.git", 28)

License

Apache 2.0

About

measure weekly code churn rate for a #git repository or #github org

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published