Why I use emojis in my Git commits
Tags: howto, git, emoji, development
Published: 2020-12-10 15:54:03

---
title: Why I use emojis in my Git commits
published: true
date: 2020-09-28 08:00:00 UTC
tags: Howto,git,emoji,development
canonical_url: http://blog.jromanmartin.io/2020/09/28/why-i-use-emoji-in-my-git-commits.html
---

We use [Emojis](https://getemoji.com/) every day in different channels like Telegram, Slack, WhatsApp, Google Chats, … They are a fast way to communicate in this visual world. So I use them too in my git commits in the same way.

Around one year ago I started to use them after collaborate in a repo where some colleagues used emojis to give a visual summary of the commits. In my homuilde opinion writing git commit messages is an [art](https://chris.beams.io/posts/git-commit/) that I am not doing well in many cases. Emojis help me to reduce the commit message and also add a visual message for others.

The UI of the most common and extended Git SCM integrates the emojis when you are browsing the repo, and the experience as a user is more clear, visual, fun and easy to follow. I used in different SCM such as:

- [GitHub](https://github.com/): Full integrated :star2:.
- [GitLab](https://gitlab.com/): Very well integrated :star:.
- [Bitbucket](https://bitbucket.org/): Very bad integration, but my commits have emojis :grin:.
- [Gitea](https://gitea.io/): Enough integration (but I did few commits) :yum:.
- [Gogs](https://gogs.io/): Enough integration (but I did few commits) :yum:.

Your repo could have a look and feel similar to:

[![](http://blog.jromanmartin.io/images/20200928/git-repository-layout.png "Git Repository")](http://blog.jromanmartin.io/images/20200928/git-repository-layout.png)

Nice, right?

So after this time using them, I could conclude that the main reasons to continue is:

- Be Cool? Hipster? Not at all
- Simple visualization of the status of the repo
- Funny documentation and easy to follow (not only in commits)
- Simple and direct messages
- Can I do it? Go ahead

## Top List of emojis

The full list of emojis is so large, but after some time I have a top list of the most common emojis in my daily development.

I could summarize my top list of emojis in:

- :tada: `:tada:`: Everything starts with the first commit.
- :memo: `:memo:`: Documentation is important in any project.
- :sparkles: `:sparkles:`: Adding new features in your project.
- :bug: `:bug:`: Fixing your code … not always is working fine.
- :fire: `:fire:`: Removing things.
- :bookmark: `:bookmark:`: Releasing a version
- :arrow\_down: :arrow\_up: `:arrow_down:` `:arrow_up:`: Managing your dependencies versions.
- :recycle: `:recycle:`: Refactoring code.
- :wrench: `:wrench:`: Configuring the project.
- :twisted\_rightwards\_arrows: `:twisted_rightwards_arrows:`: Merging branches.
- :truck: `:truck:`: Moving or renaming resources.
- :bulb: `:bulb:`: Comments in the source code are always needed
- :see\_no\_evil: `:see_no_evil:`: You don’t need to track everything (.gitignore is here)
- :wastebasket: `:wastebasket:`: Deprecating or cleaning code

Choose your own ones.

## Tools

I know that it is very hard to learn all the emojis available, however there are some useful tools to help you.

From my personal experience, I :cupid: [gitmoji-cli](https://www.npmjs.com/package/gitmojis) by Carlos Cuesta. This is a simple, and easy CLI to add emojis in your commits. This tool includes helpers, searches to choose the right emoji before your commit or when your are committing:

[![](http://blog.jromanmartin.io/images/20200928/gitmoji-commit.png "gitmoji commit")](http://blog.jromanmartin.io/images/20200928/gitmoji-commit.png)

The [git repo](https://github.com/carloscuesta/gitmoji) has everything you need to start to use it.

Happy committing !!! :beers::construction\_worker: