이 문서는 Saerok 프로젝트의 README를 참고하여 구성하였으며, Morae의 컨벤션에 맞게 수정되었습니다.
- JAVA 21
- Spring Boot 3.5.7
- PostgreSQL
- JPA (Hibernate)
- Gradle
- GitHub Actions + AWS EC2 (CI/CD)
Morae는 Conventional Commits 규칙을 기반으로 commitlint를 사용해 커밋 메시지 품질을 관리합니다.
모든 커밋은 아래와 같이 지정된 type / scope / subject 형식을 따라야 하며, 규칙을 위반하면 커밋이 거부됩니다.
<type>(<scope>): <subject>
<body>
| 타입 | 설명 |
|---|---|
✨ feat |
새로운 기능 추가 |
🐛 fix |
버그 수정 |
📚 docs |
문서 관련 변경 (예: README, 주석) |
💎 style |
코드 의미에는 영향을 주지 않는 스타일 변경 (포맷, 세미콜론 등) |
📦 refactor |
리팩토링 (기능 변경 없이 구조 개선) |
🚀 perf |
성능 개선 |
🚨 test |
테스트 코드 추가/보완 |
⚙️ ci |
CI 설정 및 관련 스크립트 변경 |
♻️ chore |
기타 작업 (예: 패키지 설치, 설정 파일 변경, 디렉토리 정리 등) |
🗑 revert |
이전 커밋 되돌리기 |
| Scope | 설명 |
|---|---|
🔐 auth |
인증/인가 도메인 |
🙋♂️ user |
사용자 도메인 |
🤖 ai |
AI 처리 |
👥 friend |
친구 도메인 |
📧 notify |
알림/이메일 전송 |
🛠️ infra |
설정/인프라 |
🗄️ db |
데이터베이스 및 마이그레이션 |
🌎 global |
공용 설정 및 전역 리소스 |
- 변경된 내용을 한 줄로 간결하게 요약합니다.
- 한국어로 자연스럽게 작성하며, 읽는 사람이 바로 이해할 수 있도록 합니다.
- 문장 끝에는 마침표(.)를 붙이지 않습니다.
예: 회원 탈퇴 기능 추가, 토큰 재발급 로직 수정, 빌드 스크립트 구조 개선
- 선택 항목이지만, 기능 수정이나 리팩토링 등 맥락이 필요한 변경이라면 작성합니다.
- “무엇을 바꿨고, 왜 바꿨는지”를 중심으로 구체적으로 설명합니다.
예: 사용자 조회 시 불필요한 쿼리가 반복 실행되어 응답 속도가 저하되었습니다. 쿼리 캐싱을 적용하여 데이터 접근 횟수를 줄이고 성능을 개선했습니다.
- 터미널에서
npm install을 실행하여 commitlint를 설치합니다. - 커밋 시 터미널에서
npm run commit입력을 통해 커밋합니다.