-
Notifications
You must be signed in to change notification settings - Fork 0
Commit Convention
JinmuGo edited this page Aug 7, 2026
·
2 revisions
Conventional Commits 규칙을 따릅니다.
commitlint + lefthook이 커밋 시 자동으로 검증하므로, 규칙을 지키지 않으면 커밋이 거부됩니다.
type(scope?): subject
- type: 커밋의 종류 (필수)
- scope: 변경 범위 (선택, 도메인명 권장)
- subject: 변경 내용 요약 (필수)
| type | 설명 | 예시 |
|---|---|---|
feat |
새로운 기능 추가 | feat(user): 회원가입 엔드포인트 추가 |
fix |
버그 수정 | fix(auth): 토큰 갱신 오류 수정 |
docs |
문서 수정 | docs: API 문서 업데이트 |
style |
코드 포맷팅 (기능 변경 없음) | style: biome 포맷팅 적용 |
refactor |
리팩토링 (기능 변경 없음) | refactor(user): 검증 로직 추출 |
perf |
성능 개선 | perf: 쿼리 캐싱 추가 |
test |
테스트 추가/수정 | test(user): 서비스 단위 테스트 추가 |
build |
빌드 시스템/의존성 변경 | build: nestjs v11 업그레이드 |
ci |
CI 설정 변경 | ci: 배포 워크플로우 추가 |
chore |
기타 잡무 | chore: gitignore 업데이트 |
revert |
이전 커밋 되돌리기 | revert: feat(user): 회원가입 엔드포인트 추가 |
- subject는 한글로 작성
- 영문 식별자로 시작하는 경우 소문자로 시작 (commitlint
subject-case규칙으로 강제) - subject 끝에 마침표 금지
- header(type + scope + subject)는 100자 이내
- scope는 선택 사항, 도메인명 사용 권장
- PR 제목과 본문도 한글로 작성 (squash merge 시 PR 제목이 커밋 메시지가 됨)
feat: 사용자 프로필 엔드포인트 추가
feat(user): 회원가입 엔드포인트 추가
fix(auth): 토큰 만료 버그 수정
docs: 폴더 구조 가이드 업데이트
refactor: 공통 검증 파이프 추출
사용자 프로필 추가 # type 누락
feat: add user profile # 영어 subject
feat: User 프로필 추가 # 영문 대문자로 시작 (subject-case 위반)
feat: 사용자 프로필 추가. # 마침표
FEAT: 사용자 프로필 추가 # type 대문자
| 단계 | 도구 | 설정 파일 |
|---|---|---|
commit-msg 훅 |
commitlint | commitlint.config.js |
| Git 훅 매니저 | lefthook | lefthook.yml |
| 규칙 프리셋 | @commitlint/config-conventional |
- |