
문서 불러오는 중...
팀원과의 소통, 편리한 과거 기록의 추적을 위해 규칙에 맞는 Commit Message를 작성하는 것이 중요하다.
Title
과 Body
를 빈 행으로 구분한다.Title
은 영문 기준 50글자 이내로 제한한다.Title
의 첫 글자는 대문자로 작성한다.Title
끝에는 마침표를 넣지 않는다.Title
은 명령문으로 사용하며 과거형을 사용하지 않는다.Body
의 각 행은 영문 기준 72글자 내로 제한한다.# Header, Body, Footer는 빈 행으로 구분한다.
Type(Scope): Title # Header
Body # Body
Footer # Footer
Header
Header
는 필수이다.
Type
은 해당 Commit의 성격을 나타내며, 아래 중 하나여야 한다.
Type | 내용 |
---|---|
build | 빌드 관련 파일 수정. 모듈 설치 또는 삭제. |
chore | 패키지 매니저, .gitignore 등 여러가지 자잘한 수정. |
ci | CI 관련 설정 파일 수정. |
design | 사용자 UI 디자인(CSS 등) 변경. |
docs | 문서 수정. |
feat | 새로운 기능. |
fix | 버그 수정. |
perf | 성능 개선. |
refactor | 코드 리팩토링. |
remove | 파일을 삭제만 한 경우. |
rename | 파일 혹은 폴더명을 수정만 한 경우. |
style | 기능 수정 없는 코드 스타일(포맷팅) 변경. |
test | 테스트 코드 추가 및 수정. |
Scope
는 생략 가능하다.
Title
에는 제목, 주제를 입력한다.
Body
Body
는 본문으로, Header
에서 표현할 수 없는 상세한 내용을 적는다.
Header
에서 충분히 표현할 수 있다면 생략 가능하다.
Footer
Resolves(Closes, Fixes): #IssueNo, ... (해결한 이슈, 생략 가능)
See also(Ref, Related to): #IssueNo, ... (참고한 이슈, 생략 가능)
Footer
는 바닥글로 생략 가능하다.
어떤 Issues에서 왔는지 등의 참조 정보들을 추가하는 용도로 사용한다. 예를 들어, 특정 Issues를 참조하려면 Resolves: #1137
와 같이 작성한다.
-m
옵션을 사용한다. 이는 vim에서 별도의 메세지를 작성할 필요없이, 명령창에서 바로 인라인 형식으로 Commit Message를 작성할 수 있게 해준다.
$ git commit -m "Commit Message"
Commit Message의 첫 줄에 '닫는 따옴표'를 넣지 말고, 마지막 줄에 사용한다. 즉, 첫 줄에 '여는 따옴표'만을 넣고 엔터를 누르면 개행이 되며, 저장되는 것이 아니라 계속해서 입력 가능하다.
$ git commit -m "Commit Message 1st Line
> Commit Message 2nd Line
> Commit Message 3rd Line
> ...
> Commit Message Last Line"
$ git commit -m "fix: Safari에서 모달을 띄웠을 때 스크롤 이슈 수정
>
> 모바일 사파리에서 Carousel 모달을 띄웠을 때,
> 모달 밖의 상하 스크롤이 움직이는 이슈 수정.
>
> Resolves: #1137"