A styleguide is about consistency. Consistency with this styleguide is important. [...]
However, know when to be inconsistent -- sometimes the styleguide just doesn’t apply.
When in doubt, use your best judgment. Look at other examples and decide what looks best.
PEP 8, the styleguide for Python code
Each commit message uploaded to the repository must...
- be succinct, but descriptive,
- be written in English,
- start with a verb written in the simple past tense,
- include a summary limited by 72 characters,
- start with a capital letter, but finish without a period.
Besides, if the summary isn’t enough to explain the commit,
you should then include a description.
And adding one is a piece of 🍰.
$ git commit -m "This is a summary" -m "And this is a description."
These are some examples of commit messages that meet the above rules.
Added a command-line option to parse the score rules
Adapted the code to harvest data from multiple sites
Replaced a couple of magic numbers
Furthermore, I recommend prepending an emoji to the message. 😀
For future references, I’m maintaining this table with some proposals.
Commit theme | Suggested emoji | Emoji code |
---|---|---|
Fix a bug | 🐛 | :bug: |
Refactoring | 🎨 | :art: |
New idea | 💡 | :bulb: |
New feature | ⭐ ✨ | :star: :sparkles: |
New version | 🏷️ | :label: |
New release | 🎉 📦 | :tada: :package: |
New changelog | 📰 | :newspaper: |
Attach a file | 📎 | :paperclip: |
Documentation | 📖 📚 | :book: :books: |
Add a comment | 💬 | :speech_balloon: |
Licensing | 📜 ©️ | :scroll: :copyright: |
Fix a typo | 📝 | :pencil: |
Text changes | 🔤 | :abc: |
Styleguide | 👮 🚓 | :cop: :police_car: |
Adjust a linter | 🔍 🔦 | :mag: :flashlight: |
Better UI | 💄 | :lipstick: |
Better UX | 🎀 | :ribbon: |
Better dryness | 🌵 🏜️ | :cactus: :desert: |
Work in progress | 🚧 | :construction: |
Revert a commit | ⏪ | :rewind: |
General cleaning | 🚿 | :shower: |
“.(xyz)ignore” file | 🙉 | :hear_no_evil: |
Reorganize files | 📁 | :file_folder: |
Remove some code | 🗑️ | :wastebasket: |
Make a hotfix | 🚒 | :fire_engine: |
Something incipient | 🌱 | :seedling: |
Something dicey | :warning: :game_die: |
|
General achievement | 💪 👌 | :muscle: :ok_hand: |
Configuration | 🔧 | :wrench: |
Sample data | 📋 | :clipboard: |
Database | 🗄️ | :file_cabinet: |
Testing | ✅ | :white_check_mark: |
Logging | 📢 | :loudspeaker: |
Profiling | ⏱️ | :stopwatch: |
Regular expression | 🦉 | :owl: |
Shell scripting | 🐚 | :shell: |
Monkey patching | 🐒 | :monkey: |
Build process | 🏗️ | :building_construction: |
Deployment | 🚀 | :rocket: |
Security | 🔒 | :lock: |
Accessibility | ♿ | :wheelchair: |
I18N/L10N | 🗺️ | :world_map: |
Metrics | 📊 | :bar_chart: |
Performance | 🐎 | :racehorse: |
Deprecation | 💀 | :skull: |
Code freeze | ❄️ | :snowflake: |
Breaking changes | 🔥 | :fire: |
Dependency upgrade | ⬆️ | :arrow_up: |
Dependency downgrade | ⬇️ | :arrow_down: |
GNU/Linux | 🐧 | :penguin: |
macOS | 🍎 | :apple: |
FreeBSD | 😈 | :smiling_imp: |
OpenBSD | 🐡 | :blowfish: |
Windows | 🏁 | :checkered_flag: |
Brave | 🦁 | :lion: |
Firefox | 🦊 | :fox_face: |
Docker | 🐳 | :whale: |
C#, F# | 🎼 | :musical_score: |
Crystal | 🔮 | :crystal_ball: |
Dart | 🎯 | :dart: |
Go | 🐿️ | :chipmunk: |
Haskell | 🍛 | :curry: |
Java | ☕ | :coffee: |
Lua | 🌙 | :crescent_moon: |
OCaml | 🐫 | :camel: |
Perl | 🐪 | :dromedary_camel: |
Python | 🐍 | :snake: |
Ruby | 💎 | :gem: |
Rust | ⚙️ | :gear: |
Swift | 🦅 | :eagle: |
Cassandra | 👁️ | :eye: |
MongoDB | 🍃 | :leaves: |
MySQL | 🐬 | :dolphin: |
PostgreSQL | 🐘 | :elephant: |
For specific topics of the project, you can keep looking here.
How to write a Git commit message — Chris Beams
This document is licensed under a Creative Commons 4.0 license.
¿No hay un estándar para el significado de los emojis?