본문 바로가기
Git · GitHub

[깃 플로우] 깃 브랜치의 5가지 종류의 역할 설명 (main, develop, feature, release, hotfix)

by 메이플 🍁 2022. 4. 4.

나보려고 만든 이미지.. 글씨 악필이라서 잘 안보임 나중에 시간될때 이미지로 만들겠음

계속 유지되는 깃 브랜치 (Regular Git Branches)

main 브랜치와 develop 브랜치는 계속 유지가 되는 브랜치로 두개의 브랜치는 항상 같은 코드를 공유하고 있어야한다.

1. main

  • 제품으로 출시될 수 있는 브랜치

2. develop

  • 다음 출시 버전 개발을 위해 사용되는 브랜치
  • 기능 개발을 위한 브랜치인 feature를 병합하기 위해 사용되는 브랜치
  • 모든 기능이 추가되면 출시될 수 있는 브랜치인 main에 병합한다

 

임시로 생성되는 깃 브랜치 (Temporary Git Branches)

1. feature

  • 새로운 기능 개발이나 버그 수정을 할 때 사용되는 브랜치
  • develop 브랜치로부터 파생된 브랜치
  • 로컬에서 개발한 후 개발이 완료되면 develop 브랜치로 병합하여 remote repo에서 공유한다
  • feature 브랜치의 이름은 일반적으로 feature/기능이름으로 정한다 예) feature/login

feature 브랜치 사용 단계

  1. 새로운 기능 개발이 필요한 경우 develop 브랜치에서 파생되는 feature 브랜치를 생성한다
  2. 로컬 컴퓨터에서 feature 브랜치에 기능 개발을 수행한다
  3. 기능 개발이 완료되면 develop 브랜치에 feature 브랜치를 병합한다
  4. 병합한 feature 브랜치는 삭제한다
  5. 새로운 기능이 추가된 develop 브랜치를 원격 저장소(remote repo)에 push한다

2. release

  • 사용자에게 배포를 준비하는 브랜치
  • release 브랜치의 이름은 일반적으로 release/버전넘버로 정한다 예) release/0.2.1
  • 버전 넘버링을 할때 실수로 버전을 뛰어넘지 않도록 조심해야 한다

release 브랜치 사용 단계

  1. develop 브랜치에서 출시할 다음 버전까지의 개발이 완료되면 release 브랜치를 develop 브랜치에서 생성한다
  2. release 브랜치에서 출시 준비 작업을 진행한다 (버그 수정, 설명서 생성, 테스트)

5. hotfix

배포 버전 브랜치 main에서 발생한 버그를 수정하는 브랜치

hotfix 브랜치 사용단계

  1. 배포된 브랜치 main에서 버그가 발생한다
  2. main브랜치에서 hotfix 브랜치를 생성한다
  3. hotfix 브랜치에서 버그를 수정한다
  4. 작업이 완료되면 hotfix브랜치를 main브랜치에 병합한 후 배포해 출시된 서비스에 버그문제가 없도록 한다
  5. hotfix 브랜치를 develop 브랜치에도 병합한다 (main브랜치와 develop 브랜치는 항상 같은 상태를 유지시켜 주어야한다)

댓글