Skip to content

NickCirv/roast-my-git

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Banner

roast-my-git

Your git habits, mercilessly analyzed. Night commits, Friday afternoon deploys, wip messages — it sees everything.

npm version node >= 18 MIT license

Why

Code reviews catch bad code. Nothing catches bad git habits — until now. roast-my-git analyzes your full commit history and produces a no-mercy report on when you commit (2am?), how often you use conventional messages, how long your streaks last, your most active day, your branch naming style, and your biggest single-commit blast radius.

Quick Start

npx roast-my-git

Run from any git repository. Analyzes the author matching your git config by default.

What It Analyzes

  • Commit timing — hour-by-hour breakdown; flags night commits (10pm–4am), morning, afternoon, evening counts
  • Weekend commits — counts and percentage of commits on Saturday/Sunday
  • Friday afternoon commits — specifically tracks 2pm–6pm Friday pushes
  • Monday commits — because Monday is when damage gets cleaned up
  • Conventional commit compliance — percentage of commits following feat/fix/docs/chore/etc.: format
  • Commit message quality — average message length; short message percentage (4 chars or fewer)
  • Longest streak — consecutive days with at least one commit
  • Commit frequency — commits per day and per week over the repo lifetime
  • Biggest single commit — largest line change count in one commit (your blast radius record)
  • Average commit size — lines changed per commit
  • Branch naming style — detects whether you use kebab-case, snake_case, or camelCase
  • Merge commit ratio — percentage of commits that are merges (merge vs rebase preference)
  • Force push count — detected from git reflog

Example Output

  roast-my-git
  Analyzing nick@example.com

  ────────────────────────────────────────────────────────────
  Total commits        347
  Commits per week     4.2
  Longest streak       12 days
  Active since         847 days

  Timing
  Most active hour     11pm  (night owl detected)
  Most active day      Wednesday
  Night commits        42  (12%)  — you live dangerously
  Weekend commits      31  (9%)
  Friday PM commits    8   (2%)   — classic

  Message Quality
  Conventional         61%  — room to grow
  Short messages       23   (7%)  — "wip", "fix", "x" count here
  Avg message length   38 chars

  Commit Size
  Average size         84 lines/commit
  Biggest single       1,204 lines  — that's a war crime

  Style
  Branch naming        kebab-case
  Merge commits        18%
  Force pushes         3   — you monster

  ────────────────────────────────────────────────────────────

Options

Flag Description Default
--author <email> Analyze a specific author git config user.email
--team Analyze all authors (top 10) off

Install Globally

npm i -g roast-my-git

License

MIT

About

Score Git workflow habits and commit hygiene. Evaluates message quality, branching, and force-pushes.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors