Skip to content

커밋 컨벤션

Sangyun Jeong edited this page Nov 13, 2023 · 1 revision

Commit 메시지 예시

[BE] Feat: 관심지역 알림 ON/OFF 기능 추가(#123)

 - 시군구의 알림을 각각 ON/OFF 할 수 있도록 기능을 추가함

Resolves: #123              
Ref: #456                               
Related to: #48, #45

Commit 구조 : 커밋 메시지의 포맷

< Commit 메시지 구조 > 

[분야(iOS/BE)] 타입(Type): 제목(Subject)
// 빈 줄 
본문(Body)
// 빈 줄
꼬리말(Footer)

타입 (Type) : Commit 의 종류를 나타낸다 / 제목 (subject)

< Type >
Feat : 새로운 기능 추가
Fix : 버그 수정
Build : 빌드 관련 파일 수정
Docs : 문서 수정
Style : 코드 스타일에 대한 수정
Test : 테스트 코드 관련 작업
Refactor : 코드 리팩토링
Rename : 파일 혹은 폴더명을 수정하거나 옮기는 작업만 한 경우
Comment : 필요한 주석 추가 및 변경
Deps : Dependency 변경점 (외부 라이브러리 추가)
Chore : 기타 변경사항

< Subject >
1. 제목은 최대 50글자까지, commit 내용을 간단히 반영해서 작성
2. 제목과 본문은 한 줄 띄워 분리한다
3. Type의 첫 글자는 대문자로 작성 (Feat , Test ...)

본문 (Body)

1. 선택 사항이므로 모든 커밋에 작성할 필요는 없다.
2. 무엇(what) 과 왜 (why) 에 집중하여 작성한다. 
3. 한 줄에 72자를 넘기면 안된다.
4. 본문에 여러줄의 메시지를 작성할 땐 "-"로 구분한다.
5. 본문과 꼬리말은 한 줄 띄어 분리한다.

꼬리말(Footer)

1. 필수가 아닌 option
2. Fixes        : 이슈 수정중 (아직 해결되지 않은 경우)
   Resolves     : 이슈 해결했을 때 사용
   Ref          : 참고할 이슈가 있을 때 사용
   Related to   : 해당 커밋에 관련된 이슈번호 (아직 해결되지 않은 경우)
	 ex) Fixes: #47 Related to: #32, #21
Clone this wiki locally