Gitmoji: Semantic Categories & Sorting for Improved Gitmoji Navigation & Workflow

Created on 22 Jul 2017  ยท  4Comments  ยท  Source: carloscuesta/gitmoji

I love gitmoji and I we have been using them for a while (well... I kinda forced my staff...). However, it is tedious to always scan for the right gitmoji given a certain context.

Following the gitflow approach

  • Manage (=master)
  • Create (feature)
  • Refine (hotfix)
// =============================================================================
// Mangage...
// =============================================================================
    // ...delivery
    ๐ŸŽ‰  Initial commit. - (:tada:)
    ๐Ÿ”–  Releasing / Version tags. - (:bookmark:)
    ๐Ÿš€  Deploying stuff. - (:rocket:)
    ๐Ÿ”€  Merging branches. - (:twisted_rightwards_arrows:)
    โช  Reverting changes. - (:rewind:)
    ๐Ÿ“  Writing docs. - (:memo:)
    ๐Ÿ“„  Adding or updating license. - (:page_facing_up:)

    // ...value
    ๐Ÿ“ˆ  Adding analytics or tracking code. - (:chart_with_upwards_trend:)
    ๐ŸŒ  Internationalization and localization. - (:globe_with_meridians:)
    ๐Ÿ’ฌ  Updating text and literals. - (:speech_balloon:)
    โ™ฟ  Improving accessibility. - (:wheelchair:)

    // ...infrastructure
    ๐Ÿ—ƒ  Performing database related changes. - (:card_file_box:)
    ๐Ÿณ  Work about Docker. - (:whale:)

    // ...integration
    ๐Ÿ‘ท  Work on CI build system. - (:construction_worker:) // "Work on" instead
    ๐Ÿ’š  Fixing CI Build. - (:green_heart:)

// =============================================================================
// Create...
// =============================================================================
    // ...features
    โœจ  Introducing new features. - (:sparkles:)
    ๐Ÿšง  Work in progress. - (:construction:)
    ๐Ÿ’ฅ  Introducing breaking changes. - (:boom:)

    // ...changes
    ๐Ÿ’„  Updating the UI and style files. - (:lipstick:)
    ๐Ÿฑ  Adding or updating assets. - (:bento:)
    ๐Ÿ”ฅ  Removing code or files. - (:fire:)
    ๐Ÿšš  Moving or renaming files. - (:truck:)

    // ...reliability
    ๐Ÿ”ง  Changing configuration files. - (:wrench:)
    โž•  Adding a dependency. - (:heavy_plus_sign:)
    โฌ†  Upgrading dependencies. - (:arrow_up:)
    โž–  Removing a dependency. - (:heavy_minus_sign:)
    โฌ‡  Downgrading dependencies. - (:arrow_down:)

    // ...ideas
    ๐Ÿ’ฉ  Writing bad code that needs to be improved. - (:hankey:)
    ๐Ÿป  Writing code drunkenly. - (:beers:)

// =============================================================================
// Refine...
// =============================================================================
    // ...flaws
    ๐Ÿ›  Fixing a bug. - (:bug:)
    โœ  Fixing typos. - (:pencil2:)
    โœ…  Adding tests. - (:white_check_mark:)
    ๐Ÿšจ  Removing linter warnings. - (:rotating_light:)
    ๐Ÿ’ก  Documenting source code. - (:bulb:)

    // ...quality
    ๐ŸŽจ  Improving structure / format of the code. - (:art:)
    ๐Ÿ‘Œ  Updating code due to code review changes. - (:ok_hand:)
    ๐Ÿ‘ฝ  Updating code due to external API changes. - (:alien:)
    โšก  Improving performance. - (:zap:)
    ๐Ÿ”จ  Refactoring code. - (:hammer:)
    ๐Ÿ“ฆ  Updating compiled files or packages. - (:package:)

    // ...stability
    ๐Ÿš‘  Critical hotfix. - (:ambulance:)
    ๐Ÿ”’  Fixing security issues. - (:lock:) // "Addressing" instead of "Fixing"
    ๐Ÿ  Addressing iOS. - (:green_apple:) // "Addressing" instead of "Fixing"
    ๐Ÿค–  Addressing Android. - (:robot:)) // "Addressing" instead of "Fixing"
    ๐Ÿ•ธ  Addressing Web and Browser. - (:web:) // Non-Standard Gitmoji
    ๐Ÿ›ฐ  Addressing Server. - (:satellite:) // Non-Standard Gitmoji

    ๐ŸŽ  Fixing something on macOS. - (:apple:)
    ๐Ÿง  Fixing something on Linux. - (:penguin:)
    ๐Ÿ  Fixing something on Windows. - (:checkered_flag:)

I am not 100% sure about the categories, but it should probably not be more than 3. This list feels, due to categorization and sorting more approachable for usual workflows (though probably not perfect) because โ€” in many cases โ€” emojis can simply be chained top to down.

I.e. fixing a bug on ios: ๐Ÿ›๐Ÿ“ฆ ๐Ÿ
-> "Fixing bug by re-compiling libraries for xcode."

We work with react-native and web. We are going to create promotion material that will incorporate gitmoji as swag / print out cards.

We'll likely go with this but I want to gather feedback to see what could be improved.

Best
Dino

screen shot 2017-07-22 at 16 11 00

discussion

Most helpful comment

Hey @carloscuesta, ok that is fair. My goal is to formalize the emoji use as a tag system that aligns with common workflows.

Since we use many emojis as CI triggers of certain kinds, we decided to build a development framework around our use of emojis. The full spec will release on August 23. at my talk on React Native Continues Integration Strategies in Berlin. I designed a cheat-sheet following the principle, that โ€” though not officially released โ€” can anyone download here:

Simply Print and Fold (you don't need staples โ€” just stick the ends into each other).
composition

gitmoji-triangle-A4.pdf
gitmoji-triangle-US-Letter.pdf

This can also be used as a general github cheat sheet.

Best
Dino

All 4 comments

Hey @D1no

I don't think we really need a categorization for Gitmojis, I think it's better to keep it simple!

Hey @carloscuesta, ok that is fair. My goal is to formalize the emoji use as a tag system that aligns with common workflows.

Since we use many emojis as CI triggers of certain kinds, we decided to build a development framework around our use of emojis. The full spec will release on August 23. at my talk on React Native Continues Integration Strategies in Berlin. I designed a cheat-sheet following the principle, that โ€” though not officially released โ€” can anyone download here:

Simply Print and Fold (you don't need staples โ€” just stick the ends into each other).
composition

gitmoji-triangle-A4.pdf
gitmoji-triangle-US-Letter.pdf

This can also be used as a general github cheat sheet.

Best
Dino

Looks cool! Though I think that the paper format it's not really usable, as long as it becomes outdated really quickly

I don't think categories are necessary and your idea differs a little bit from gitmoji but I love to see things built with gitmoji ๐ŸŽ‰ ๐Ÿ˜„

Well as a framework, there should be hardly any breaking changes. And if so, one maybe has to run
lp -d pullprint gitmoji-triangle-A4.pdf to get up to date ๐Ÿ˜…

Cheers & nice Sunday!

Was this page helpful?
0 / 5 - 0 ratings

Related issues

elliot-nelson picture elliot-nelson  ยท  35Comments

eliorc picture eliorc  ยท  12Comments

smoliji picture smoliji  ยท  13Comments

alexfernandez picture alexfernandez  ยท  15Comments

DanielHilton picture DanielHilton  ยท  13Comments