GitFlow란?
Branch 간의 문제 없이 배포까지 안정적으로 할 수 있도록 Branch를 관리하는 전략이다.
GitFlow에서 주로 사용하는 Branch는 5가지가 있다.
1. Main
- 실제 운영 환경에 존재하는 코드만 갖고 있는 Branch
- 따라서 안정적인 코드만 갖고 있어야 한다.
2. Dev
- Main Branch를 베이스로 생성한 Branch
- 다음 배포에 나갈 Feature 개발건들을 Merge하고 모든 작업 내용을 갖고 있는 Branch
3. Feature
- 어떤 Feature를 개발할 때 만드는 Branch
- 커밋을 다 한 경우에는 다시 Dev Branch에 Merge해준다.
4. Release
- Dev Branch를 베이스로 생성하는 Branch
- 다음 배포에 나갈 코드를 스냅샷을 뜨는 느낌으로 생성한다.
- Release Branch를 생성한 이후에는 더 이상 Dev Branch에 작업하지 않는다.
- 따라서 Release Branch로 실제 서버를 배포하며, QA나 개발 테스트를 완료했을 때 Main Branch에 Merge한다. (이 때는 Main Branch를 운영에 배포한다.)
5. Hotfix
- 의도치 않은 장애사항이 발생시 생성하는 Branch
- Main Branch를 기반으로 생성
- 급한 수정사항만 수정 후 Main Branch에 Merge한다. (이 때도 바로 Main Branch를 배포한다.)
'Git, GitHub > Git' 카테고리의 다른 글
[Git] stash - 작업 중 다른 브랜치로 가고 싶어~! (0) | 2024.02.18 |
---|---|
[Git] Merge vs Rebase (2) | 2024.02.16 |