💡 "신입부터 아키텍트까지 한 눈에 이해하는 Git-Flow 브랜치 관리 및 커밋 표준"
📌 AA팀 개발자 교육 문서 - Chapter 5 (DevOps)
이 문서에서는 L/T Framework v3 형상 관리 및 연속적 개발/배포(CI/CD) 환경 유지를 위한 Git Branch 전략(Git-Flow) 및 표준 Commit Message 템플릿을 다룹니다.
L/T Framework v3 프로젝트는 소스 코드의 안정성과 신속한 피처 개발을 위해 Git-Flow 브랜치 전략을 준수합니다.
[main] ──────────────────────────────────────────● (Production Release Tag)
│ ▲
└── [release/v3.1.0] ─────────────────────────┤ (Release Staging)
▲ │
[develop] ──┴───────●───────────●────────────────┴─ (Development Integration)
▲ ▲
│ └── [feature/102-notice-crud] (Feature Dev)
└── [feature/101-user-auth] (Feature Dev)
| 브랜치 유형 | 브랜치명 규칙 | 역할 및 설명 |
|---|---|---|
main |
main |
• 프로덕션 운영 환경 배포 전용 브랜치 • 정식 릴리즈 태그( v3.1.0 등)가 생성되는 브랜치 |
develop |
develop |
• 개발 통합 및 검증 브랜치 • 모든 기능 개발(Feature) 결과물이 최종 머지되는 브랜치 |
feature |
feature/{issue-no}-{feature-name} |
• 단위 기능 개발 브랜치 (예: feature/102-notice-crud)• develop 브랜치에서 분기하여 개발 후 PR(Pull Request) 머지 |
release |
release/{version} |
• 배포 전 최종 검증 및 테스트 브랜치 (예: release/v3.1.0) |
hotfix |
hotfix/{issue-no} |
• 운영 환경 긴급 버그 수정 브랜치 |
체계적인 변경 이력 관리를 위해 커밋 메시지는 커밋 타입, 스코프, 제목 및 상세 설명 구조로 작성합니다.
<type>(<scope>): <short summary>
[optional body]
| 타입 | 의미 | 예시 |
|---|---|---|
feat |
신규 기능 구현 | feat(notice): 공지사항 IBSheet8 CRUD 화면 구현 |
fix |
버그 및 에러 수정 | fix(auth): JWT 토큰 만료 처리 RoleCheckInterceptor 오류 수정 |
refactor |
코드 리팩토링 | refactor(cqrs): PageHelper 수동 Count 쿼리 성능 최적화 |
docs |
문서 작성 및 주석 변경 | docs(swagger): SampleNoticeController API Swagger 주석 보완 |
style |
코드 포맷팅 (로직 변경 없음) | style(ui): IBSheet8 그리드 CSS 마진 및 다이얼로그 높이 조정 |
test |
테스트 코드 추가/수정 | test(service): NoticeServiceImpl 단위 테스트 추가 |
chore |
빌드 설정 및 패키지 관리 | chore(gradle): Spring Boot 3.5.3 및 dependencies 업그레이드 |