-
Notifications
You must be signed in to change notification settings - Fork 2
git 브랜치 및 머지 전략
Park minji edited this page Sep 1, 2024
·
2 revisions
-
브랜치 종류: master, develop, hotfix 브랜치 사용
- master: 안정화된 코드를 유지하는 브랜치
-
develop: 개발 중인 기능을 통합하는 브랜치
- 새로운 기능 개발, 버그 수정 수행
-
hotfix: 운영 환경에서 발견된 급한 문제를 수정하는 브랜치
- 문제가 해결되면 master와 develop 브랜치에 통합
-
release 브랜치는 프로젝트의 볼륨이 크지 않아 필요하지 않다고 판단
-
브랜치 명명 규칙:
- 기능 추가나 버그 수정을 위한 브랜치는
feat#1
또는bugfix#2
와 같은 형식으로 작성 - 동일한 이슈에 대해 복수 브랜치가 필요한 경우에는
feat#1/detail
형식으로 브랜치를 구분
- 기능 추가나 버그 수정을 위한 브랜치는
-
머지 vs squash-merge
-
머지(Merge): 브랜치를 직접 통합하는 방식으로, 원본 브랜치의 모든 커밋 이력을 유지
- 다수의 커밋이 함께 기록되며 브랜치 그래프가 복잡해질 수 있음
-
스쿼시 머지(Squash-Merge): 브랜치의 모든 커밋을 하나로 합쳐서 통합
- 이슈별로 커밋을 확인하기 쉬우며, 브랜치 그래프가 더 깔끔하게 유지 가능
- PR 단위가 커질 경우 롤백이 어려울 수 있음
-
머지(Merge): 브랜치를 직접 통합하는 방식으로, 원본 브랜치의 모든 커밋 이력을 유지
-
스쿼시 머지(Squash-Merge) 사용 결정
- 커밋 이력을 깔끔하게 유지하기 위해 각 PR을 스쿼시하여 통합하는 전략을 채택