[git] commit message convention

joyful·2022년 6월 10일
0

git

목록 보기
1/5

1. 메시지 구조

type(옵션): [#issueNumber - ]Subject      -> 제목
(한 줄을 띄워 분리)
body(옵션)      -> 본문 
(한 줄을 띄워 분리)
footer(옵션)      -> 꼬리말
  • type : 어떤 의도로 커밋했는지 명시
  • subject
    • 최대 글자수 : 50자
    • 마침표 찍지 말 것
    • 영문 표기시
      • 동사를 가장 앞에 둘 것
      • 첫 글자는 대문자로 표기
  • body
    • 긴 설명이 필요한 경우 작성
    • 무엇 했는지 작성
    • 최대 글자수 : 75자
  • footer : issue tracker ID를 명시하고 싶은 경우 작성


2. 작성법

2-1. 제목

코드 변경 사항에 대한 짧은 요약을 나타낼 것

1. 규칙

  1. 제목의 처음은 동사 원형으로 시작
    • 영어로 작성 시
      • 첫 글자는 대문자로 작성
      • "Fix", "Add", "Change" 등의 명령어로 시작
    • 한글로 작성 시
      • "고침", "추가", "변경" 등의 명령어로 시작
        예시) Feat: 추가 get data api 함수
  2. 총 글자 수는 50자 이내로 작성
  3. 마지막에 특수문자는 삽입하지 말 것 예) 마침표(.), 느낌표(!), 물음표(?)
  4. 제목은 개조식 구문으로 작성

2. type

  • 형식 : 태그: 제목

  • 태그와 제목으로 구성

  • 태그는 영어로 쓰되 첫 문자는 대문자로 작성

    항목설명종류
    Feat새로운 기능 추가기능
    Fix버그 수정기능
    DesignCSS 등 사용자 UI 디자인 변경기능
    !BREAKING CHANGE커다란 API 변경의 경우
    ex) API의 arguments, return 값의 변경
    ex) DB 테이블 변경
    ex) 급하게 치명적인 버그를 고쳐야 하는 경우
    기능
    !HOTFIX급하게 치명적인 버그를 고쳐야하는 경우기능
    Comment필요한 주석 추가 및 변경개선
    Style스타일 관련 기능
    ex) 코드 포맷팅, 세미콜론 누락, 코드 자체의 변경이 없는 경우
    ex) 오타 수정, 탭 사이즈 변경, 변수명 변경 등
    개선
    Refactor코드 리팩토링개선
    Docs문서 수정 ex) README.md 수정 등기타
    Test• 테스트 코드, 리펙토링 테스트 코드 추가(프로덕션 코드 변경 X)
    • test 폴더 내부 변경이 발생한 경우에만 해당
    기타
    Rename파일 혹은 폴더명을 수정하거나 옮기는 작업만인 경우기타
    Remove사용하지 않는 파일 혹은 폴더를 삭제하는 경우기타
    Chore• 빌드 업무 수정, 패키지 매니저 수정
    • 모듈의 변경
    ex) .gitignore 수정
    ex) package.json 변경
    ex) dotenv의 요소 변경
  • 기능 태그의 경우 괄호 안에 추가적인 문맥 정보 제공 가능

    ex)
    "Feat(navigation): "
    "Fix(database): "

2-2. 본문

  1. 본문은 한 줄 당 72자 내로 작성
  2. 본문 내용은 양에 구애받지 않고 최대한 상세히 작성
  3. 본문 내용은 무엇을 변경했는지 또는 왜 변경했는지를 설명

2-3. 꼬리말

  1. 꼬리말은 optional
  2. 이슈 트래커 ID를 작성
  3. 형식 : "유형: #이슈 번호"
  4. 여러 개의 이슈 번호를 적을 때는 쉼표로 구분
  5. 이슈 트래커 유형은 다음 중 하나를 사용
    • Fixes: 이슈 수정 중 (아직 해결되지 않은 경우)
    • Resolves: 이슈를 해결했을 때 사용
    • Ref: 참고할 이슈가 있을 때 사용
    • Related to: 해당 커밋에 관련된 이슈번호 (아직 해결되지 않은 경우)

      ex) Fixes: #45 Related to: #34, #23


3. 전체 예시

Feat: 수정 회원가입 함수

회원가입 함수 오류 수정

Resolves: #111
Ref: #432
Related to: #4, #7
profile
기쁘게 코딩하고 싶은 백엔드 개발자

0개의 댓글