Skip to content

Latest commit

Β 

History

History
107 lines (90 loc) Β· 10.5 KB

File metadata and controls

107 lines (90 loc) Β· 10.5 KB

Commit convention

How to create commits

In our project, we create commits in an orderly way, using emoji for this and start the commit content with a capital letter. The commit body complements β€žthis commit will...". For example: ":lipstick: Fix main container height"

List of emojis that we use

Emoji Code Description Name
🎨 :art: Improve structure / format of the code. art
⚑️ :zap: Improve performance. zap
πŸ”₯ :fire: Remove code or files. fire
πŸ› :bug: Fix a bug. bug
πŸš‘οΈ :ambulance: Critical hotfix. ambulance
✨ :sparkles: Introduce new features. sparkles
πŸ“ :memo: Add or update documentation. memo
πŸš€ :rocket: Deploy stuff. rocket
πŸ’„ :lipstick: Add or update the UI and style files. lipstick
πŸŽ‰ :tada: Begin a project. tada
βœ… :white_check_mark: Add or update tests. white-check-mark
πŸ”’οΈ :lock: Fix security issues. lock
πŸ”– :bookmark: Release / Version tags. bookmark
🚨 :rotating_light: Fix compiler / linter warnings. rotating-light
🚧 :construction: Work in progress. construction
πŸ’š :green_heart: Fix CI Build. green-heart
⬇️ :arrow_down: Downgrade dependencies. arrow-down
⬆️ :arrow_up: Upgrade dependencies. arrow-up
πŸ“Œ :pushpin: Pin dependencies to specific versions. pushpin
πŸ‘· :construction_worker: Add or update CI build system. construction-worker
πŸ“ˆ :chart_with_upwards_trend: Add or update analytics or track code. chart-with-upwards-trend
♻️ :recycle: Refactor code. recycle
βž• :heavy_plus_sign: Add a dependency. heavy-plus-sign
βž– :heavy_minus_sign: Remove a dependency. heavy-minus-sign
πŸ”§ :wrench: Add or update configuration files. wrench
πŸ”¨ :hammer: Add or update development scripts. hammer
🌐 :globe_with_meridians: Internationalization and localization. globe-with-meridians
✏️ :pencil2: Fix typos. pencil2
πŸ’© :poop: Write bad code that needs to be improved. poop
βͺ️ :rewind: Revert changes. rewind
πŸ”€ :twisted_rightwards_arrows: Merge branches. twisted-rightwards-arrows
πŸ“¦οΈ :package: Add or update compiled files or packages. package
πŸ‘½οΈ :alien: Update code due to external API changes. alien
🚚 :truck: Move or rename resources (e.g.: files, paths, routes). truck
πŸ“„ :page_facing_up: Add or update license. page-facing-up
πŸ’₯ :boom: Introduce breaking changes. boom
🍱 :bento: Add or update assets. bento
♿️ :wheelchair: Improve accessibility. wheelchair
πŸ’‘ :bulb: Add or update comments in source code. bulb
🍻 :beers: Write code drunkenly. beers
πŸ’¬ :speech_balloon: Add or update text and literals. speech-balloon
πŸ—ƒοΈ :card_file_box: Perform database related changes. card-file-box
πŸ”Š :loud_sound: Add or update logs. loud-sound
πŸ”‡ :mute: Remove logs. mute
πŸ‘₯ :busts_in_silhouette: Add or update contributor(s). busts-in-silhouette
🚸 :children_crossing: Improve user experience / usability. children-crossing
πŸ—οΈ :building_construction: Make architectural changes. building-construction
πŸ“± :iphone: Work on responsive design. iphone
🀑 :clown_face: Mock things. clown-face
πŸ₯š :egg: Add or update an easter egg. egg
πŸ™ˆ :see_no_evil: Add or update a .gitignore file. see-no-evil
πŸ“Έ :camera_flash: Add or update snapshots. camera-flash
βš—οΈ :alembic: Perform experiments. alembic
πŸ”οΈ :mag: Improve SEO. mag
🏷️ :label: Add or update types. label
🌱 :seedling: Add or update seed files. seedling
🚩 :triangular_flag_on_post: Add, update, or remove feature flags. triangular-flag-on-post
πŸ₯… :goal_net: Catch errors. goal-net
πŸ’« :dizzy: Add or update animations and transitions. animation
πŸ—‘οΈ :wastebasket: Deprecate code that needs to be cleaned up. wastebasket
πŸ›‚ :passport_control: Work on code related to authorization, roles and permissions. passport-control
🩹 :adhesive_bandage: Simple fix for a non-critical issue. adhesive-bandage
🧐 :monocle_face: Data exploration/inspection. monocle-face
⚰️ :coffin: Remove dead code. coffin

How to decide which emoji to use

In most cases, your change will fit into a pretty obvious emoji category. If it doesn't, you should think hard about whether or not you're making a clean change.

Often you can break up changes into two or more commits that each accomplish their own specific type of action. If that means you only change one tiny line or fix a simple typo in a commit, so be it! It should be a no-brainer that any given commit does exactly what it says it does β€” and only what is says it does. No side-effects.

In general, you should use exactly one emoji per commit message. In rare cases, you should use a second emoji (e.g. when using something like ⚑ to signify that whatever you just did β€” πŸ›, πŸ”₯, etc. β€” was a breaking change).

Emoji will also depend on your client/user. A back-end API might use ✨ when adding new API endpoints, and the front-end app might use ✨ when using those endpoints to display new content.

The formula

Human WIP

:[EMOJI_NAME]: [THE COMMIT WILL...]

  • :sparkles: Add cool animations
  • :bug: Fix the flicker

RegEx

[:]([A-Z a-z])\w+[:] [A-Z]\w.*$ RegEx example

Examples

  • πŸ› Fix the flicker caused by the drawer
  • ✨ Add a super cool animation for the drawer
  • ♻️ Refactor drawer code
  • πŸ”₯ Remove deprecated drawer code
  • πŸ“¦ Install react-littera@2.1.4