Search
Duplicate
📒

[Git] 0x. Git 커밋 컨벤션 설정하기

상태
완료
수업
개인공부
주제
Git
4 more properties
참고

Git Convention

NOTE
Commit Message를 어떻게 작성해야 하는가?
Git Commit 제대로 안쓰면 이렇게된다! (도대체 뭘 작업한거냐?)
Git Commit Message를 제대로 작성하지 않으면 작업 추적이 굉장히 어려워진다!

메시지 구조

NOTE
커밋 메시지는 크게 제목, 본문, 꼬리말 3가지 파트로 나뉘며, 각 파트는 빈줄을 두어서 구분한다!
type(옵션): [#issueNumber - ]Subject // -> 제목 (한 줄을 띄워 분리합니다.) body(옵션) // -> 본문 (한 줄을 띄워 분리합니다.) footer(옵션) // -> 꼬리말
Java
복사
Feat: "회원 가입 기능 구현" SMS, 이메일 중복확인 API 개발 Resolves: #123 Ref: #456 Related to: #48, #45
Java
복사
실제 Commit 예시

Commit Type

NOTE
타입 ⇒ 태그 + 제목으로 구성되며, 태그는 영어로 쓰되 첫 문자를 영어로 한다!
태그 : 제목
Java
복사
: 뒤에 space가 있다는걸 유의하자
feat : 새로운 기능추가
fix : 버그 수정
docs : 문서 수정
style : 코드 포맷팅, 세미콜론 누락, 코드 변경이 없는 경우
refactor : 코드 리팩토링
test : 테스트 코드, 리팩토링 테스트 코드 추가
chore : 빌드 업무 수정, 패키지 매니저 수정

Subject

NOTE
제목은 최대 50글자가 넘지 않도록 하고 마침표 및 특수기호는 사용하지 않는다.
영문으로 표현하는 경우 동사(원형)을 가장 앞에두고, 1글자는 대문자로 한다.
제목은 개조식 구문으로 작성한다.
완전한 서술형 문장이 아니라, 간결하고 요점적인 서술을 의미한다.

Body

NOTE
본문은 한 줄당 72자 내로 작성하낟.
본문 내용은 양에 구애받지 않고 최대한 상세히 작성한다.
본문 내용은 어떻게 변경했는지 보다 무엇을 변경했는지 또는 왜 변경했는지를 설명한다.

footer

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