Calculate average commit frequency per contributor or repository over time.
Commit frequency is a coarse but useful activity signal. Formula: commits_per_day = total_commits / days. Splitting the window in half and comparing rates reveals whether activity is accelerating, slowing, or steady — useful for spotting a stalling project or a crunch period before a release.
Commits per day
commits_per_day = total_commits / days
Trend percentage
trend_percent = (recent_rate - early_rate) / early_rate × 100
Not necessarily — commit frequency reflects activity, not quality or value delivered. Squash-merging workflows naturally show fewer, larger commits than teams that commit incrementally.
Use `git log --since=<date> --oneline | wc -l` for a total count, or `git log --format=%ad --date=short` piped into a grouping script to see daily/weekly breakdowns.
Common causes include holidays, a team between sprints, contributors blocked on a dependency, or the project shifting to a maintenance phase with fewer active changes.
Only cautiously — team size, commit granularity (squash vs. many small commits), and workflow conventions all affect raw frequency, so it's most useful as a trend within one repo over time.