GIT

[Git] git branch 전략

미도반 2022. 8. 11. 13:57

git branch 전략

  • git branch 전략은 다양하다. 또한 사용자에 따라 다양한 방법으로 응용이 가능하기 때문에 자신의 환경에 맞게 진행 하면 된다.

 

 

▶ gitflow의 5가지 branch

  • master : 기준이 되는 브랜치로 제품을 배포하는 브랜치
  • develop : 개발 브랜치로 개발자들이 이 브랜치를 기준으로 각자 작업한 기능들을 Merge
  • feature : 단위 기능을 개발하는 브랜치로 기능 개발이 완료되면 develop 브랜치에 Merge
  • release : 배포를 위해 master 브랜치로 보내기 전에 먼저 QA(품질검사)를 하기위한 브랜치
  • hotfix : master 브랜치로 배포를 했는데 버그가 생겼을 떄 긴급 수정하는 브랜치

 

 

 gitflow 과정

  1. master 브랜치에서 develop 브랜치를 분기합니다.
  2. 개발자들은 develop 브랜치에 자유롭게 커밋을 합니다.
  3. 기능 구현이 있는 경우 develop 브랜치에서 feature-* 브랜치를 분기합니다.
  4. 배포를 준비하기 위해 develop 브랜치에서 release-* 브랜치를 분기합니다.
  5. 테스트를 진행하면서 발생하는 버그 수정은 release-* 브랜치에 직접 반영합니다.
  6. 테스트가 완료되면 release 브랜치를 master와 develop에 merge합니다.

 

 

▶ 소규모 프로젝트인 경우 간소화 전략 사용 

  • master
  • develop
  • feature
  • release
    • 테스트 시 버그가 발생한 경우 develop branch로부터 분기하면 된다.
    • 테스트 완료 후 꼭 develop 과 master 에 merge 해줘야 한다.

 

 

 유의사항

  • 추가 기능을 개발하고 할 때 develop branch로부터 분기하면 된다.
  • 기능 개발 범위가 너무 크지 않도록 한다. 개발 범위가 프로젝트 전반에 걸쳐 있는 경우 추후에 merge 시 충돌 많이 발생하여. 협업을 하는 경우 불필요한 시간이 많이 낭비된다.
  • 기능 개발이 완료 된 경우 develop 으로 merge를 직접 진행 한다.
 
 
 

 

 
정리 잘 되어 있는 사이트
참고