IT/etc.

[Git] Commit Message Convention

Huitopia 2022. 5. 12. 12:21
728x90

type: subject
body
footer

Type

영어로 쓰되 첫 문자는 대문자로 표기

  • Feat: 새로운 기능 추가
  • Fix: 버그 수정
  • Add: 코드나 테스트, 예제, 문서 등의 추가 생성이 있을 때 사용
  • !BREAKING CHANGE: 커다란 API 변경의 경우
  • Comment: 필요한 주석 추가 및 변경
  • Chore: 빌드 업무 수정, 패키지 매니저 수정
  • Design: CSS 등 사용자 UI 디자인 변경
  • Docs: 문서 수정
  • !HOTFIX: 급하게 치명적인 버그를 고쳐야하는 경우
  • Move: 코드 이동있을 때 사용
  • Improve: 향상이 있을 대 사용. 호환성, 성능, 검증 기능, 접근성 등 다양한 것들이 목적이 될 수 있음
  • Implement: 코드가 추가된 정도보다 더 주목할 구현체를 완성시켰을 때 사용
  • Refactor: 코드 리팩토링
  • Rename: 파일 혹은 폴더명을 수정하거나 옮기는 작업만인 경우
  • Remove: 파일을 삭제하는 작업만 수행한 경우
  • Style: 코드 포맷팅, 세미콜론 누락, 코드 변경이 없는 경우
  • Test: 테스트 코드, 리팩토링 테스트 코드 추가
  • Update: 개정, 버전 업데이트 있을 때 사용

 

Subject

코드 변경 사항에 대한 짧은 요약을 나타내며 다음 규칙을 지킨다.

  1. 제목의 처음은 동사 원형으로 시작
  2. 총 글자 수는 50자 이내로 작성
  3. 마지막에 마침표 및 특수문자 삽입 불가
  4. 제목은 개조식 구문으로 작성
  5. 영어로 작성하는 경우 첫 글자는 대문자로 작성
  6. 한글로 작성하는 경우 명령어로 시작하여 작성
  7. 과거시제 작성 금지

 

Body

  1. 내용은 양에 구애받지 않고 최대한 상세히 작성
  2. 선택사항이기 때문에 모든 커밋에 본문내용을 작성할 필요는 없음
  3. 부연설명이 필요하거나 커밋의 이유를 설명할 경우 작성
  4. 어떻게 변경했는지 보다 무엇을 변경했는지 또는 왜 변경했는지 설명
  5. 72자를 넘기지 않고 1번과 한줄을 띄워서 작성

 

Footer

  1. 선택사항이기 때문에 모든 커밋에 꼬리말을 작성할 필요 없음
  2. issue tracker id를 작성할 때 사용
  3. 유형: #이슈 번호 형식으로 사용
  4. 여러개의 이슈 번호를 적을 때는 쉼표로 구분
  5. 이슈 트래커 유형
    - Fixes: 이슈 수정중
    • Resolves: 이슈를 해결했을 때 사용
    • Ref: 참고할 이슈가 있을 때 사용
    • Related to: 해당 커밋에 관련된 이슈 번호(미해결시)
      ex) Fixes: #22 Related to: #26, #29

 

Example

Feat: 추가 회원정보 함수
회원정보 조회 API 개발
Resolves: #21

 

참고사이트

 

ull.im

울려 퍼지다.<br/> 반향하다.<br/> 공명하다.

blog.ull.im

 

728x90