커밋 컨벤션
: 협업 시 Commit Message를 일관된 형식으로 작성하기 위한 규칙이다.
필요성
- 가독성 향상
- 협업 용이
- 프로젝트 히스토리 관리 용이
Commit Message 구조
type : subject //제목
body //본문
footer //꼬리말
Type : Subject
형태: "태그 : 제목"
- 태그
//원칙이 아니기 때문에 규칙이 바뀔 수 있다.
//태그 여러 개 사용 시 콜론으로 구분
Type | 설명 |
Feat | 새로운 기능 추가 |
Fix | 버그 수정 |
Docs | 문서 수정 |
Style | 코드 포맷팅, 세미콜론 누락, 코드 변경 없는 경우 |
Refactor | 코드 리팩토링 |
Test | 테스트 코드 추가 |
Chore | 빌드 업무 수정, 패키지 매니저 수정 |
- 하단: https://duektmf34.tistory.com/206 를 참고한 태그
Type | 설명 | 참고사항 |
Feat | 기능 추가 | 기능 당 최초 한 번만 사용 |
Build | 라이브러리 세팅/ 업데이트 | 라이브러리 설치 최초 한 번만 사용 |
Update | 라이브러리 버전 업데이트/커스텀 | |
Config | Config 파일 설정 | |
Remove | 파일 삭제 | |
Fix | 기능 에러 수정 | |
HotFix | 치명적인 버그 수정 | main 브랜치에 바로 반영 |
Style | UI 관련 CSS 수정 | |
Chore | 단순 코드 수정 | 주석, 줄 바꿈, import문, 세미콜론 등... |
Revise | 기능 추가나 덧붙임을 위한 수정 | |
Typo | 오타 수정 | |
Modify | 기능 변경 있는 코드 개선/ 변경 | |
Refactor | 기능 변경 없는 코드 개선 | |
Asset | 이미지, 폰트 | 리소스 파일 |
Docs | 문서 작성 |
- 제목
규칙 |
최대 50글자 이내 |
마침표 및 특수기호 사용 금지 |
영어로 작성 시 첫 글자는 대문자 |
명령문 |
간결하게 서술 |
Body
: 본문
- 형태: "내용"
규칙 |
한 줄당 72자 이내 |
내용의 양에 무관하게 최대한 상세히 작성 |
변경 사항에 대해 어떻게 보다는 무엇을, 왜를 중심으로 작성 |
Footer(선택)
형태: "유형: #이슈 번호"
- 이슈 번호 복수일 시 쉼표로 구분
이슈 트래커 유형 | 설명 |
Fixes | 이슈 수정 중(아직 해결되지 않음) |
Resolves | 이슈 해결 완료 |
Ref | 참고할 이슈가 있음 |
Related to | 해당 커밋에 관련된 이슈 번호(아직 해결되지 않) |
'GitHub' 카테고리의 다른 글
gitignore에 추가했는데 변동사항이 자꾸 커밋되는 이유가 뭘까? (0) | 2025.05.15 |
---|---|
gitIgnore에 추가, 레포지토리의 파일 삭제 (0) | 2025.04.29 |
github 참고 (0) | 2025.04.09 |