Clean Commits

Turn messy WIP into clean, atomic commits with messages that explain why. Use before opening a PR.

archive228 795fad5 759 B Updated

File contents

Clean Commits

  • Atomic — one logical change per commit. Refactor and behavior change go in separate commits.
  • Message — subject says WHAT in imperative ("Fix null pointer in user lookup"), body says WHY. "Fix bug" is useless.
  • Specific — "Fix login failing when email has uppercase chars" tells the next person exactly what happened.
  • Reorder/squash WIP and "fix typo" commits into the real changes (git rebase -i).
  • Never mix an unrelated fix into a feature commit. A good history is a debugging tool: git bisect and git blame only work if commits are atomic and messages explain intent.

archive228/loopkit/tree/main/skills/clean-commits commit 795fad5f3f

Frequently asked questions

npx skillmds@latest add archive228/clean-commits