1. 개발 환경 및 규칙 | 커밋 메세지 컨벤션 - DDD-Community/DDD-12-MOYORAK-API GitHub Wiki
커밋 메세지를 일정한 혀식으로 작성하자는 규칙입니다.
컨벤션 없이 프로젝트를 관리하다보면, 시간이 갈 수록 의미 없는 커밋 메세지가 남게 됩니다.
이러한 문제점을 방지하고, 일관되게 프로젝트를 관리하기 위해서는 필요한 개발 약속 중 하나입니다.
커밋 메세지 컨벤션을 지킴으로써, 아래와 같은 장점이 존재합니다.
- 변경 이력 추적 용이
- 한 눈에 어떠한 것이 수정 되었고, 추가 되었는지 빠르게 파악이 가능합니다.
- 코드 리뷰 시 편리함
- 작은 단위의 커밋을 통해 무엇을 개발하였는지 쉽게 이해가 가능합니다.
- 소통 기준 수립
- 커밋 메세지만으로도 작업 내용을 공유하여 커뮤니케이션이 도움됩니다.
<type>(<optional scope>): <subject>
<BLANK LINE>
<optional body>
<BLANK LINE>
<optional footer>
변경사항에 대한 간단한 설명을 작성합니다.
한눈에 파악되기 좋은 내용을 주로 명시합니다.
커밋 목적을 한 단어로 표현합니다.
타입 | 의미 |
---|---|
feat | 새로운 기능 추가 |
fix | 버그 수정 |
docs | 문서 변경 (코드 수정X) |
refactor | 리팩토링 (기능 변화X) |
test | 테스트 코드 추가, 수정 |
chore | 빌드 도구 설정, 간단한 것 수정 |
build | CI/CD 관련 |
style | 코드 포매팅, 오타, 함수명 수정 등 |
이 외로도 팀 자체적으로 조율하여 추가할 수 있습니다.
변경 범위나 대상 모듈 명시할 수 있습니다.
feat(login): 소셜 로그인 버튼 추가
scope는 괄호로 묶어서 type 옆에 위치합니다.
변경 사항에 대한 한 줄 요약을 의미합니다.
- 최대한 한 줄로, 간결하게 작성합니다.
- 마침표를 찍지 않습니다.
- 동사로 작성하지 않습니다.
- 명령문 문장으로 사용하며, 과거형으로 작성하지 않습니다.
feat: 우리 서비스를 이용하기 위한 필수 기능인 로그인 기능을 ~~~~~~~~~를 이용하여 추가했었습니다. ❌
feat: 로그인 기능 추가 ✅
변경 이유나 상세 설명을 작성합니다.
- 무엇을 왜 변경하였는지 작성
- 여러 줄 작성 가능
- 코드 흐름이나 배경, 설명 포함 모두 가능합니다.
이슈 연동, 브레이킹 체인지 등을 작성합니다.