-
[git] version control 깃 버전 관리git 2022. 1. 14. 15:48
git-flow strategy
아래의 5가지의 branch를 사용하여 버전을 관리한다. (main, develop feature, release, hotfix)
main : production version
- 제품으로 출시될 브랜치
develop : stage version (test version)
- 다음 버전을 개발하는 브런치
feature : 단위 기능을 개발하는 브랜치
- 각자 맡은 feature의 개발이 완료되면 develop와 merge된다.
- merge 전 pull request를 사용하여 merge 전 코드리뷰를 받은 후 반영사항 수정하고 commit 후 merge한다.
release : 이번 출시 버전을 준비하는 브랜치
- 배포 하기 전에 충분한 검증을 위해 생성하는 브랜치
- 배포 가능한 상태가 되면 main과 develop 각각에 merge 한다.
- naming 예시 : release-1.2
hotfix : 출시 버전에서 발생한 버그를 수정하는 브랜치
- 배포 중 버그가 생겨 긴급하게 수정해야 하는 브랜치이다. 배포 이후에 이루어지는 브랜치이고 반영사항은 main, develop에 모두 적용해야한다.
- naming 예시 : hotfix-1.2.1
참고
main, develop는 항시 운영되어야 함
나머지 브랜치는 각자의 역할이 끝나 merge되면 브랜치를 삭제해가며 정리한다.
즉 유지되는 브랜치는 main, develop 두개만 있어야한다.
전체적임 브랜치의 흐름