
main과 develop 브랜치가 대표적인 브랜치 전략의 유형임release 및 hotfix 브랜치를 통해 여러 버전의 출시 작업을 지속적으로 지원 가능variable본문(한글) → 어떻게(How) 보다는 무엇을(What), 왜(Why)에 맞춰 작성
Init : 프로젝트 생성Feat : 새로운 기능 추가Fix : 버그 수정Docs : 문서 수정Style : 코드 formatting, 세미콜론(;) 누락, 코드 변경이 없는 경우Design : 디자인 적용 및 디자인 관련 코드 수정Refactor : 코드 리팩토링Test : 테스트 코드, 리팽토링 테스트 코드 추가Chore : 빌드 업무 수정, 패키지 매니저 수정Minor : 사소한 변화Init: Create Ajou-swift project
# 엔터 꼭 넣어주세요.
이렇게 이렇게 개발해서 이러이러한 결과물이 나옴
- 어떠한 문제가 발생하여 무엇을 해결
- 왜 이러한 방법을 사용하여 개발
upstream : 소유자 혹은 조직의 repositoryorigin : upstream 에서 fork 하여 사용, 각자의 개인 깃허브에서 확인 가능한 repositorydevelop : 현재 개발이 진행 중인 브랜치, 해당 브랜치에서 각 작업에 해당하는 브랜치를 생성하고 개발 완료 후 해당 브랜치에 병합main : 현재 출시가 완료된 최종 버전의 브랜치, 개발 완료 후 release / hotfix 브랜치에서 출시 작업 진행 후 해당 브랜치에 병합release : 출시 작업을 위한 브랜치, QA 및 출시 작업 진행 후 develop 이랑 main 에 mergehotfix : 긴급한 버그 수정 및 출시 작업을 위한 브랜치, 버그 수정 및 출시 작업 진행 후 develop 이랑 main 에 merge태그-브랜치_설명의 규칙으로 작성, 기본적으로 커밋 룰과 동일
단 : 콜론은 - 대시로 변경, 공백은 _ 언더바로 변경
init-create_ajou_swift_project
main : 안정 버전 브랜치develop : 개발 버전 브랜치release : 출시 작업 진행hotfix : 긴급 출시 작업 진행init : 프로젝트 생성feat : 새로운 기능 추가fix : 버그 수정docs : 문서 수정style : 코드 formatting, 세미콜론(;) 누락, 코드 변경이 없는 경우design : 디자인 적용 및 디자인 관련 코드 수정refactor : 코드 리팩토링test : 테스트 코드, 리팽토링 테스트 코드 추가chore : 빌드 업무 수정, 패키지 매니저 수정minor : 사소한 변화upstream/feature-[function] ← origin/feature-[function]
origin/feature-[function]에서 작은 단위의 기능 개발이 끝난 후 upstream/feature-[function]에 병합, 이때 PR을 통한 코드 리뷰 필수
upstream/develop ← upstream/feature-[function]
기능 개발과 코드 리뷰가 완료된 후 develop에 병합, 이때 자체적인 코드 리뷰 필수
upstream/main ← upstream/release-[version]
버전 단위의 개발이 끝난 후 release 브랜치를 생성하여 테스트 후 다시 main 브랜치에 병합
hotfix는 main 에서 땀release는 develop 에서 땀develop 이랑 main에 병합되어야 함