Skip to content

깃 브랜치 전략

hyunji edited this page Jul 31, 2023 · 13 revisions
image

브랜치 전략

  • main에서 발생한 버그가 명확한 경우 hot-fix로 처리한다.
  • 이 외에는 rollback으로 처리하며, 롤백은 main 브랜치에서 진행한다.
type description naming convention
main - 운영 환경으로 앱 버전을 배포할 수 있는 안정적인 브랜치이다.- 삭제되지 않는다. main
hotfix - main에서 분기되는 버그 수정용 브랜치이다
- main에 squash merge 후 삭제된다.
hotfix/#이슈번호
develop - main에서 분기된다.
- 삭제되지 않는다.
- 스프린트 단위 기능 개발이 완료되었을때 main에 merge된다.
develop
feature - develop에서 분기된다.
- 기능 추가가 완료되면 dev에 squash merge 후 삭제된다.
feat/#이슈번호
fix - develop에서 발생한 에러를 수정하는 브랜치이다.
- 에러 수정이 완료되면 dev에 squash merge 후 삭제된다.
fix/#이슈번호
refactor - develop의 기능 코드를 리팩터링하는 브랜치이다.
- 리팩터링이 완료되면 dev에 squash merge 후 삭제된다.
refactor/#이슈번호

깃 커밋 컨벤션

prefix description
feat 기능 추가
refactor 버그 수정과 기능 추가를 제외한 코드 수정
(ex. 함수명 수정, 타입 수정, 필요 없는 코드 제거, 패키지 구조 변경)
fix 버그 수정(fix, hotfix를 모두 포함)
docs 문서 수정
style 세미콜론 추가, 코드 정렬 수정, 오탈자
design 사용자 UI 관련 작업
test 테스트 관련 작업 (추가, 수정, 제거)
comment 주석 추가, 삭제, 수정
chore 빌드 업무 수정, 패키지 매니저 수정 (프로덕션 코드 변경 X), 패키지 이동
rename 파일명, 폴더명 변경
remove 파일명, 폴더 삭제
  • 커밋 메시지 양식

    prefix: 커밋 제목
    
    - 세부 변경 내용1
    - 세부 변경 내용2

Issue, PR 컨벤션

  • Issue 컨벤션

    • [AN] feat: 프로젝트 초기 생성
  • PR 컨벤션

    • PR 요청시 프로젝트를 설정하지 않는다.
    • 구현한 이슈의 제목과 동일하게 진행한다.
    • ex) [AN] feat: 프로젝트 초기 생성
  • Merge 컨벤션

    • [AN] or [BE] 를 제외한 이슈 제목을 가져온다. (커밋 컨벤션을 따라야 함)
    • ex) feat: 프로젝트 초기 생성