Commit Message Convention
Commit Message Convention은 커밋 메시지의 규칙을 정해두는 것이다. 팀 단위로 협업을 할 때 유용하게 사용되며 커밋 히스토리를 읽는것 만으로도 변경사항을 이해할 수 있도록 commit message를 남기는 것이다.
그 중에서 가장 많이 쓰이는 AngularJS 의 커밋 메세지 컨벤션에 대해서 알아보자.
1. Commit Message 기본 구조
커밋 메시지는 빈 줄로 구분된 세 부분 '제목/본문/꼬리말'로 구성된다. 이 때 커밋 메시지의 제목만 필수이며 본문과 꼬리말은 선택적 입력이다.
type(scope): subject
body
footer
2. Type
- feat : 새로운 기능 추가
- fix : 버그 수정
- docs : 문서 관련
- style : 스타일 변경 (포매팅 수정, 들여쓰기 추가, …)
- refactor : 코드 리팩토링
- test : 테스트 관련 코드
- build : 빌드 관련 파일 수정
- ci : CI 설정 파일 수정
- perf : 성능 개선
3. Scope
- 커밋 변화가 일어난 곳의 법위를 특정하며 생략 가능하다.
- $location, $browser, $compile, $rootScope, ngHref, ngClick, ngView, 등이 들어갈 수 있다.
4. Subject
- 변경사항에 대한 간단한 설명을 적는다.
- 명령문, 현재시제로 작성한다.
- 첫글자를 대문자로 시작하지 않으며 문장 끝에 마침표(.)를 붙이지 않는다.
5. Body
- 의무는 아니며 현재시제로 작성하기를 권장한다.
- 변경한 이유와 변경전과의 차이점을 설명한다
- 선택사항이므로 의무적으로 작성할 필요는 없다.
- Issue tracker id를 작성할때 사용된다.
마치며
이번 포스트에서는 Commit Message Convention, 그 중에서도 AngularJS commit message conventions에 대해서 알아보았다. 커밋 메세지를 규칙성 없이 원하는대로 작성했었는데 이제부터는 AngularJS의 커밋 컨벤션을 적용해야겠다. 그럼 안녕!! (ノ◕ヮ◕)ノ*:・゚✧