Helps to keep a better order and keep easy to understand every change in the git log history Emojis looks nice, and i chose the most easy to remember ones
| type | [scope] | subject | 
|---|---|---|
| emoji | section (optional) | Summary (present tense) | 
Commit example: :star:[Navbar] Add new links
How will look your git log history:
- β [Navbar] Add new links
- πͺ² [Sidebar] Fix issue in react hook
- β»οΈ Refactor gitlabci.yml
| emoji | type | meaning | 
|---|---|---|
| :star: | β feature | Add new code/tests | 
| :beetle: | πͺ² bug/fix | Bug fixes for code/tests | 
| :recycle: | β»οΈ refactor | Update/refactor code/tests | 
| :gear: | βοΈ chore | Update build/CI/Docker tasks | 
| :art: | π¨ style | Design update (css/fonts/html) | 
| :book: | π docs | Changes in documentation or readme | 
I recommend to use commitizen and cz-emoji to make it work out of the box.
npm install commitizen -g
npm install cz-emoji -gAfter install commitizen and cz-emoji packages, you need to create a .czrc config file in your root project folder
{
  "path": "cz-emoji",
  "config": {
    "cz-emoji": {
      "symbol": true,
      "skipQuestions": ["issues","breaking"],
      "types": [
        {
          "emoji": "β",
          "code": ":star:",
          "description": "Add new code/tests.",
          "name": "feature"
        },
        {
          "emoji": "π",
          "code": ":beetle:",
          "description": "Bug fixes for code/tests.",
          "name": "bugfix"
        },
        {
          "emoji": "β»οΈ",
          "code": ":recycle:",
          "description": " Update/refactor code/tests.",
          "name": "refactor"
        },
        {
          "emoji": "βοΈ",
          "code": ":gear:",
          "description": " Update build/CI/Docker tasks.",
          "name": "chore"
        },
        {
          "emoji": "π¨",
          "code": ":art:",
          "description": "Design update (css/fonts/html).",
          "name": "style"
        },
        {
          "emoji": "π",
          "code": ":book:",
          "description": "Changes in documentation or readme.",
          "name": "docs"
        }
      ]
    }
  }
}https://www.conventionalcommits.org/
https://seesparkbox.com/foundry/semantic_commit_messages