1. Git 브랜치 전략이란
Git 브랜치 전략은 프로젝트의 Git 브랜치를 효과적으로 관리하기 위한 워크플로우이다
각 Branch에 규칙을 정해놓고, 해당 규칙을 팀원들이 지켜가며 개발을 진행하는 것이다.
2. Git 브랜치 전략이 필요한 이유
-팀원들간의 공통 브랜치 용어를 정하여 공통 이해를 달성하고 효율적으로 관리할 수 있기 때문이다.
3. git flow 구성
- Main 브랜치
- Develop 브랜치
- Supporting 브랜치
- Feature 브랜치
- Release 브랜치
- Hotfix 브랜치
1. Main 브랜치
- 출시 가능한 프로덕션 코드를 모아두는 브랜치이다. 프로젝트 시작 시 생성되며 개발 프로세스 전반에 걸쳐 유지된다,
-배포된 각 버전을 tag를 이용해 표시해둔다
2.Develop 브랜치
- 다음 버전 개발을 위한 코드를 모아두는 브랜치이다. 개발이 완료되면 Main 브랜치로 머지된다
3. Feature 브랜치
- 하나의 기능을 개발하기 위한 브랜치이다. Develop 브랜치에서 생성하며 기능이 개발 완료되면 다시 Develop 브랜치로 머지된다
- 주의점은 Fast-Forward로 머지하지 않고 Merge commit 을 생성하며 머지를 해줘야 히스토리가 특정기능 단위로 묶이게 된다.
- 네이밍은 feature/branch-name 과 같은 형태로 생성
4.Release 브랜치
- 소프트 웨어 배포를 준비하기 위한 브랜치, Develop 브랜치에서 생성하며 버전이름 등의 소소한 데이터를 수정하거나 배포 전 사소한 버그럴 수정하기 위해 사용된다
- 배포 준비가 완료되었다면 Main 과 Develop 브랜치에 둘다 머지한다, 이때 Main 브랜치에는 태그를 이용하여 버전 표시
-브랜치를 따로 운용함으로써, 배포 업무와 관련 없는 팀원들은 병렬적으로 Feature 브랜치에서 이이서 기능을 개발 할 수 있다.
- 네이밍은 release/v1.1과 같은 형태로 생성한다
5.Hotfix 브랜치
-이미 배포된 버전에 문제가 발생했다면 Hotfix브랜치를 사용해서 문제를 해결한다,
-Main 브랜치에서 생성하며 해결이 완료되면 Main 과 Develop 브랜치에 둘다 머지한다.
- Hotfix 브랜치를 따로 운용함으로써, 핫픽스 업무와 관련없는 팀은 병렬적으로 기능 개발을 할 수 있다.
-네이밍은 Hotfix/v1.0.1 과 같은 형태로 생성한다.
'weeklypaper' 카테고리의 다른 글
얕은 복사(Shallow Copy)와 깊은 복사(Deep Copy) (0) | 2023.12.12 |
---|---|
js 비교연산자 '==' 와 '===' 차이점은? (0) | 2023.12.12 |
git에서 branch merge 3가지 방법 (0) | 2023.12.12 |
CSS - position 속성 (0) | 2023.12.12 |
CSS - Cascading (0) | 2023.12.12 |