Skip to content

Convention

김지희 edited this page Jan 18, 2025 · 1 revision

Git Convention

Branch

  • main
    • 배포할 코드
  • develop
    • 배포 전 개발 기능 통합 및 테스트를 위한 브랜치
    • feature 브랜치에서 PR이 들어오면 CI, AI 코드 리뷰 진행
    • CI 통과, 코드 리뷰 반영 후 PR 합치기
  • feature
    • 기능 단위 개발 브랜치
    • feature/{#이슈번호 개발기능} 으로 작명

Commit

커밋 형식

[Type #이슈번호] Subject
- Body (선택)

Type

  • feat: 기능 추가
  • fix: 버그 수정
  • refactor: 리팩터링
  • test: 테스트 코드
  • docs: 문서 작업
  • chore: 관리, 빌드 등

Subject

  • 명령조로 작성
  • ex) [feat #1] 회원가입 기능 구현

Body

  • 구체적인 부연 설명이 필요한 경우 추가

Issue

Issue 형식

  • 등록된 이슈 템플릿에 맞춰 작성
    • 버그 - 버그 템플릿 이용
    • 나머지 - 기본 템플릿 이용

Title

  • “[Type] 제목”

ETC

  • Assignees와 Label 등록
    • Label은 Commit Type과 동일

Pull Request

Issue 형식

  • 등록된 PR 템플릿에 맞춰 작성

Title

  • “[Type #이슈번호] 제목”

ETC

  • Assignees와 Label 등록
    • Label은 Commit Type과 동일

Coding Convention

Directory Structure

  • Layered Architecture에 따라 작성

Example

com.example.myapp
├── application
│   ├── service
│   │   └── OrderService.java
│   ├── dto
│   │   └── OrderDTO.java
├── domain
│   ├── model
│   │   └── Order.java
│   ├── repository
│   │   └── OrderRepository.java
│   └── service
│       └── OrderDomainService.java
├── infrastructure
│   ├── repository
│   │   ├── JpaOrderRepository.java
│   │   └── OrderRepositoryImpl.java
│   ├── configuration
│   │   └── DatabaseConfig.java
│   └── messaging
│       └── KafkaMessageProducer.java
└── presentation
    ├── controller
    │   └── OrderController.java
    └── request
        └── OrderRequest.java