programming/환경설정 및 팁

[DevTool] Gitmoji란? & Gitmoji 툴

u1qns 2024. 9. 29. 01:16

예전에 한 번 다룬 적이 있지만 보충할 겸 새로 쓴다. 

 

 

# Gitmoji

🔗깃모지 공식 홈페이지 : https://gitmoji.dev/

 

깃모지(Gitmoji)는 Git 커밋 메시지에 이모지를 사용하여 커밋의 내용을 시각적으로 표현하는 방법(?)이다.

이모지를 사용함으로써 커밋 메시지를 더 직관적으로 만들고, 코드 변경 사항을 한눈에 이해하기 쉽게 도와준다.

 

이건 실제 내 Git History인데 Gitmoji의 힘을 느낄 수 있다. 

 

 

 

<적용 전>

사실 이때도 깃모지 너무 쓰고 싶었는데 팀원들이 정말 싫어해서 못 했다... 나만 문서화랑 컨벤션에 진심이지..나만..

 

 

<적용 후>

지금하고 있는 프로젝트는 착실히 지키고 있다. 

가끔씩 이거 해야해? 하면서 안 지키는 팀원이 있지만 말벌 아저씨처럼 쫓아가서 뭐라하는 중!ㅎㅎ

나 혼자라도 지킨다. 그것이 규칙이니까..

 

 

 

# 설치하기

자신의 운영체제에 맞는 방식으로 설치해주자 

npm i -g gitmoji-cli #window
gitmoji --help #설치 확인
brew install gitmoji # mac
gitmoji --help #설치 확인

 

 

 

# 사용 방법

 

## Git Commit Rule

사용하기 앞서 `Git Commit Rule`에 대해 알아보자.

이미 Gitmoji까지 관심 가져서 이 글을 본다면 알려줄 필요도 없지만 가끔 구조의 이름을 모르는 사람이 있어 올린다. 

 

[scope?][:?] <message>

# 예시
Feat: Gitmoji 구현
  • `scope`: An optional string that adds contextual information for the scope of the change.
  • `message`: A brief explanation of the change.

 

## Git Scope

`Scope`가 우리가 쓰는 Feat, Fix, Update, Chore를 뜻한다. 

Scope에 따라서 Emoji를 고르면 된다. 

 

프로젝트를 할 때면 Scope를 뭐라할지 고민하게 된다. 

주석은 Chore인가 Update인가? 패키지 이동은 Chore인가 Move인가?

은근히 이런 고민이 2,3분씩 시간을 잡아먹기 때문에 팀원들끼리 꼭 시간 투자를 해서 Git Scope정의하길 바란다.

 

[내 경우]

  •  :sparkles: 새로운 기능 추가
  • 🐛 :bug:버그 수정
  • 📃 :docs: 문서 수정
  • 🎉 :tada: 초기화
  • ♻️ :recycle: 코드 리팩토링
  • 🔀 :twisted_rightwards_arrows:: 브랜치 병합 (Merge) & Conflict 처리도 여기에 해당
  • ⚡️ :zap:성능 개선

이 외에 자잘하게 yml바꾸고 그런건 Chore로 합의 봤다. 

 

아래 블로그에 잘 정리되어있으니 참고해서 팀원과 사전에 협의하길 바란다 🌠

https://taptorestart.tistory.com/entry/%EA%B9%83%EB%AA%A8%EC%A7%80gitmoji%EB%A5%BC-%ED%91%9C%EB%A1%9C-%ED%95%9C%EB%88%88%EC%97%90-%EC%A0%95%EB%A6%AC

 

깃모지gitmoji를 표로 한눈에 정리!

깃모지gitmoji란? Carlos Cuesta가 정리한 깃Git용 이모티콘이다. 커밋 메시지 맨 앞에 이모티콘을 사용한다. 아래 예를 보면 📄 Update LICENSE라고 커밋 메시지를 쓴 게 예이다. 깃모지 표 이모티콘 이모

taptorestart.tistory.com

 

 

## Commit

 

먼저 평소대로 git add를 해주고 commit할때 사용해주면 된다. 

대신, git commit 이 아니라 `gitmoji -c`를 치자 

gitmoji -c

 

 

Choose a gitmoji

어떤 scope를 쓸지 적어주자.

 

 

`feat`를 치면 우리의 암묵적 룰인 이모지 ✨가 바로 뜬다.

 

선택해서 원하는 타이틀과 메세지를 작성하면 완료! 

 

 

 

# Gitmoji Tool

 

VsCode Extension

다른거랑 비교해서 뭐가 좋냐고 하면 대답 못 함

그냥 내가 이거 써서 추천하는거임

 

원래 vscode로 commit 하던 사람들은 편하게 쓸 수 있을 듯 합니다.

여기서 바로 이모티콘 누르면 이모지를 고를 수 있어서 편합니다.

 

 

 

IntelliJ Extension

추천할게 없음

나는 터미널에서 cli로 그냥 씀.. 

이상하게 인텔리제이 플러그인은 gitlab에서 확인했을 때 이모지가 안뜨고 :sparkle:이런식으로 떠서 모두 비추!!