커밋 메세지 컨벤션

좋은 커밋 메시지는 미래의 자신이나 동료에게 변경사항을 명확히 전달할 수 있어야 한다. 간결하고 읽기 쉬운 커밋 메세지 작성법을 알아보자.

1. 커밋 메세지 구조

Type: Subject

Body

Footer

3단계로 구성되며, 각 단계는 빈 줄로 구분된다.

2. 커밋 타입

태그 : 제목의 형태이며, :뒤에만 space가 있음에 유의한다.(feat: example)

  • feat : 새로운 기능 추가
  • fix : 버그 수정
  • docs : 문서 수정
  • style : 코드 포맷팅, 세미콜론 누락, 코드 변경이 없는 경우
  • refactor : 코드 리펙토링
  • test : 테스트 코드, 리펙토링 테스트 코드 추가
  • chore : 빌드 업무 수정, 패키지 매니저 수정

3. 제목

  • 제목은 최대 50글자로, 마침표 및 특수기호는 사용 금지.
  • 영문 표기시 동사를 가장 앞에 두고, 첫 글자는 대문자 표기(과거 시제 금지)
  • 제목은 서술형이 아니다. 간결하게 요점만 적을 것.

Added 이렇게 적지 말고 Add로 끝내라는 말이다.

4. 내용

  • 본문은 한 줄 당 최대 72자로 작성.
  • 본문의 양에 구애받지 않고 최대한 상세하게 작성한다.
  • 어떻게 변경했는지는 코드를 보면 알 수 있다. 무엇을, 왜 변경했는지 설명하라.

5. 꼬릿말

  • 꼬릿말은 선택 요소이다. 이슈트래커 ID를 작성하자.
  • 유형: #이슈번호형식으로 사용한다.
  • 각 이슈 번호는 ,로 구분한다.
  • 이슈 트래커 유형은 아래와 같다
    • Fixes : 이슈 수정중
    • Resolves : 이슈 해결 완료
    • Ref : 참고할 이슈 존재시 사용
    • Related to : 해당 커밋에 관련된 이슈 번호

ex) Fixes: #45 Related to: #34, #23 이처럼 사용한다.

6. 예시

Fix: "이름 있는 이미지 무시 오류 해결"

notion-to-github 과정에서 이름이 있는 이미지들은
경로가 변경되지 않던 문제 해결

Resolves: #45

참고 자료