팀의 코드 변경 사항을 명확하고 통일성 있게 관리하기 위한 커밋 태그 및 브랜치 명명 규칙입니다.
| 태그 | 유형 | 설명 | 예시 (커밋 메시지) |
|---|---|---|---|
feat |
기능 추가 | 새로운 기능(Feature)을 코드로 구현하는 작업. | feat: 플레이어 대시 기능 추가, feat: 인벤토리 시스템 기본 로직 구현 |
bugfix |
버그 수정 | 코드에서 발견된 버그를 수정하는 작업. | bugfix: 몬스터 체력이 음수가 되는 오류 수정, bugfix: 아이템 사용 시 크래시 현상 해결 |
refactor |
코드 개선 | 기능은 동일하지만, 내부 코드를 정리하거나 최적화하는 작업. (이름 변경, 구조 변경 등) | refactor: 함수명 통일 및 가독성 개선, refactor: 중복 로직 제거하여 모듈화 |
docs |
문서 작업 | README, 가이드, 주석 등 문서(Documentation)를 작성하거나 업데이트하는 작업. | docs: README.md 프로젝트 개요 작성, docs: 주요 클래스에 주석 추가 |
setting |
환경 설정 | 프로젝트 설정 변경, 에셋/라이브러리 추가 및 업데이트, 파일/폴더 구조 정리 등의 작업. | setting: 필요한 에셋(Input System) 추가, setting: .gitignore 파일 설정 업데이트 |
design |
디자인/에셋 | 코드와 분리된 UI/UX 디자인 변경, 단순 오브젝트 배치, 에셋 조정 등의 작업. | design: 메인 메뉴 UI 레이아웃 조정, design: 배경 오브젝트 배치 및 계층 구조 정리 |
커밋 메시지는 [태그]: [상세 내용] 포맷을 따릅니다.
- [태그]: 위 표에서 정의된 6가지 유형 중 하나를 선택하며, 항상 소문자로 작성합니다.
- [상세 내용]: 어떤 작업을 했는지 명확하게 설명합니다. (과거형 대신 명령형 사용 권장, 예: '수정함' 대신 '수정')
feat: 새로운 스킬 이펙트 추가 bugfix: 로그인 시 토큰 만료 오류 해결 refactor: PlayerController 클래스 구조 개선
일반적으로 [태그]/[간결한 설명] 형태로 브랜치 이름을 명명합니다.
feat/player-jumpbugfix/login-errorrefactor/naming-convention
- 어떤 점이 추가되거나 바뀌었는지 설명.
- 편한 이해를 위해 참고 링크나 작업한 내용의 스크린샷을 추가
- 혹은 리뷰어들에게 강조하고 싶은 부분을 추가한다.
- 코드 스타일 가이드 준수했는가?
- Reviewers / Assignees / Labels / Milestone 지정 완료했는가?
- 기획서의 내용을 준수했는가?