Skip to content

Commit Convention

JaHyun Koo edited this page Jan 18, 2023 · 5 revisions

커밋 컨벤션

커밋 컨벤션은 AngularJS Git Commit Message Conventions을 참고했습니다.

커밋 메시지 구조

Type: Subject

Body

Footer

Type(필수; required)

타입에는 작업 타입을 나타내는 태그를 적습니다. 작업 타입에는 대략 다음과 같은 종류가 있습니다.

Type Subject
[Feat] 새로운 기능 추가
[Add] 새로운 뷰, 에셋, 파일, 데이터... 추가
[Fix] 버그 수정
[Build] 빌드 관련 파일 수정
[Design] UI Design 변경
[Docs] 문서 (문서 추가, 수정, 삭제)
[Style] 스타일 (코드 형식, 세미콜론 추가: 비즈니스 로직에 변경 없는 경우)
[Refactor] 코드 리팩토링
[Rename] 파일명 또는 디렉토리명을 단순히 변경만 한 경우
[Delete] 파일 또는 디렉토리를 단순히 삭제만 한 경우

예시) [Type] #{이슈번호} 커밋메세지 git commit -m "[Feat] #12 로그인 기능 추가"

Subject

  • 서브젝트는 50글자가 넘지 않도록 작성합니다.
  • 서브젝트는 마침표를 찍지 않습니다.
  • 영어로 작성하는 경우 첫 문자는 대문자로 작성합니다.

Body(옵셔널; optional)

  • 바디는 서브젝트에서 한 줄 건너뛰고 작성합니다.
  • 바디는 없어도 큰 문제가 없는 경우도 많습니다. 따라서 항상 작성해야 하는 부분은 아닙니다.
  • 설명해야 하는 변경점이 있는 경우에만 작성하도록 합시다!
  • 바디에는 뭐가 어떻게 변경됐다는 구체적 정보보다는 왜 이 작업을 했는지에 대한 정보를 적는 것이 좋습니다.

Footer(옵셔널; optional)

  • 푸터도 바디와 마찬가지로 옵션입니다.
  • 푸터의 경우 일반적으로 트래킹하는 이슈가 있는 경우 추적기(트래커) ID를 표기할 때 사용합니다.
  • '#' 를 누르면 이슈 번호나 커밋 번호를 확인할 수 있습니다.
  • 필요한 경우 푸터를 남겨주세요!


예시

[Feat] #12 로그인 기능 추가

JWT 토큰을 통해 로그인을 구현했습니다. 
현재 hashmap을 통해 구현하였으나 추후 redis로 변경할 예정입니다 

Closes #12