Skip to content

브랜치 전략

Sonny edited this page Dec 6, 2023 · 1 revision

브랜치 전략

GitHub Flow를 변형한 아래의 브랜치 전략을 준수한다.

이슈 생성

  1. 이슈 제목: [AOS/Type], [BE/Type], [AI/Type] 이슈 제목
  2. 이슈 내용: Issue, To Do, ETC, ScreenShot
  3. Assignees, Labels, Projects, Milestone 설정

Type

  • 기능 : feat
  • 버그 : fix
  • 리팩토링 : refactor
  • 문서 : docs
  • 테스트 : test

브랜치 생성

  1. 로컬 환경에서 브랜치를 생성한다.
  2. 브랜치 이름: feat/{issue-number} ex) feat/1
  3. commit
  4. push를 보낼 때는 origin:feat/{issue-number}(fork한 개인 레포지토리)로 보낸다.

Pull Request

1. origin:feat/{issue-number} → upstream:{본인 분야 브랜치}

  1. PR 요청 시기는 '이슈' 완료 시점으로 한다.
  2. PR 제목: [AOS/Type], [BE/Type], [AI/Type] PR 제목
  3. PR 내용: 관련 이슈, 주요 변경사항
  4. 코드 리뷰: 생략 가능
  5. 충돌이 없다면 merge : 'origin:feat/{issue-number} → upstream:{본인 분야 브랜치}'

2. upstream:{본인 분야 브랜치} → upstream:main

스프린트 완료 PR

  1. PR 요청 시기는 하나의 스프린트가 완료된 시점으로 한다.
  2. PR 제목: [AOS], [BE], [AI] 스프린트 이름
  3. PR 내용: 관련 이슈, 스프린트 진행 사항
  4. 코드 리뷰: 생략 가능
  5. 충돌이 없다면 merge : upstream:{본인 분야 브랜치}upstream:main

3. upstream:{본인 분야 브랜치} → upstream:release-{본인 분야 브랜치}

실사용 서버 배포 PR

  1. PR 요청 시기는 배포 시점으로 한다.
  2. PR 제목: [AOS], [BE], [AI] Version number
  3. PR 내용: 관련 이슈, 배포 내용
  4. 코드 리뷰: 생략 가능
  5. 충돌이 없다면 merge : upstream:{본인 분야 브랜치}upstream:release-{본인 분야 브랜치}

주의 사항

  • remote 두개 생성할 것
    • origin: fork한 개인 레포지토리 git remote add origin ~
    • upstream: 원래 레포지토리 git remote add upstream ~

참고 자료