Table of contents
- Introduction
- Basic format
- Cheatsheet and alternative trends
- Benefits
- Narrative examples
- Recommended resources
- Conclusion
Introduction
Every cell in your body regenerates. In seven years, you literally won't be the same person. Do you think that in all that time you'll remember what that commit you made today was for? Not you, not anyone.
And yet, we keep writing commit messages as if we'll remember them forever. "Minor changes," "miscellaneous fixes," "final adjustments." As if that were enough.
This article is an invitation to change that. To write commit messages that are understandable. That tell a story. That help you debug, collaborate, and grow as a developer.
Basic format
( ):
- is optional and indicates the affected area (for example,
api
,ui
,build
). - The <descripción> It is a short phrase in the present tense, like a newspaper headline.
feat(login): allow login with Google
Cheatsheet and alternative trends
Most used types
Guy | When to use it? |
---|---|
feat | New functionality for the user |
fix | Bug fixes |
docs | Changes in documentation |
style | Aesthetic changes, without affecting logic |
refactor | Internal improvement without changing functionality |
test | Add or modify tests |
chore | Internal or maintenance tasks |
Other trends in the community
Conventional Commits
Base of many modern tools (such as Semantic Release).
- Advantages: CI/CD compatible, automatic changelogs.
- Drawbacks: It can feel bureaucratic if it doesn't fit well.
Gitmoji
Combine semantics + emojis.
- Example:
✨feat: new form component
- Advantages: more visual and expressive.
- Disadvantages: It can be informal in certain professional contexts.
Custom prefixes
Defined by the team according to their needs.
- Example:
UX:
,SEC:
,PERF:
- Advantages: total flexibility.
- Disadvantages: lack of standardization and difficult integration with tools.
Benefits
History that is understood
Instead of a chaotic "final update," each commit provides context. Knowing whether a change fixes a bug or adds a new feature is immediate.
Emergency help
Friday at 6:00 PM. The program has broken. The client calls screaming. Hundreds of users receive 500 errors. You have to review 200 team commits to find out what caused it.
You find one that says: backend modifications
You open it. Ten minutes later, you discover it only deletes imports and edits documentation.
In a parallel universe, commits have clear prefixes. You filter with git log --grep=^fix
and you find the cause in seconds. The customer, relieved, even buys you a beer.
Real automation
Well-written messages allow you to generate changelogs, version tags, and automatic releases. You don't need to write all of that by hand. Git does it for you if you write well.
Improve collaboration
Your commit doesn't just tell you what you changed. It tells you why, where, and for what purpose. And that saves you unnecessary explanations with each pull request.
Narrative examples
fix(api): fix expired token validation error feat(auth): allow multi-factor login docs(readme): add troubleshooting section refactor(service): split complex business logic test(payments): tests with failed cards chore(ci): update continuous integration workflow
Recommended resources
Conclusion
A commit message is more than a technical obligation. It's part of a project's narrative. It's a communication tool. A way to work better.
So next time you write git commit
Stop for a second. Think about your future self. Think about your team. Think about the desperate customer. And write the message you wish you had read in the midst of the chaos.
Start today. Make commits that read like useful documentation. Because tomorrow—or seven years from now—you'll be thankful.