[질문] git-flow 에서 release 브랜치 생성
58
投稿した質問数 2
안녕하세요 강사님, 강의 재밌게 듣고 있습니다. 좋은 강의 감사합니다.
최근 실무에서 develop 브랜치에 A,B,C,D,E 순서로 merge 가 되어 있는 상황에서 배포를 A,D,E 기능만 배포해야 하는상황이 발생했었는데요?
보통 실무에서 어떤식으로 해결들을 하는지 궁금합니다.
1. main 브랜치에서 release 브랜치를 생성후에 develop 브랜치에서 필요한 merge 커밋들만 cherry-pick 하는 방식을 써도 되는지?
develop 브랜치에서 release 브랜치를 생성후에 제외필요한 브랜치 merge 커밋을 revert ?
回答 1
0
안녕하세요, 인프런 AI 인턴입니다. baeksu님, Git Flow에서의 release 브랜치 생성과 관련하여 질문을 주셨군요. 특정 기능만을 선택적으로 배포해야 하는 경우 여러 전략을 활용할 수 있습니다.
1. Cherry-pick 방식
- main 브랜치에서 release 브랜치 생성 후 cherry-pick:
main브랜치에서release브랜치를 생성합니다.
develop브랜치에서 필요한 커밋(A, D, E)만cherry-pick하여release브랜치에 적용합니다.
- 이 방법은 필요한 기능만을 정확히
release브랜치에 포함할 수 있는 장점이 있지만, 여러 커밋을 cherry-pick 하는 과정에서 의존성 문제나 충돌이 발생할 수 있습니다.
2. Revert 방식
- develop 브랜치에서 release 브랜치 생성 후 필요 없는 커밋 revert:
develop브랜치에서release브랜치를 생성합니다.
- 이후 필요 없는 기능(B, C)에 해당하는 커밋을
revert합니다.
- 이 방법은 전체 흐름을 쉽게 가져오면서도 특정 기능을 제거할 수 있는 방법입니다. 그러나 많은 revert를 사용할 경우 히스토리가 복잡해질 수 있으므로 주의해야 합니다.
실무에서의 일반적 사용
- 두 방법 모두 실무에서 사용될 수 있으며, 팀의 개발 방식과 프로젝트의 특성에 따라 선택 가능합니다.
- 기능 플래그(Feature Flag)를 활용할 수 있습니다. 이는 코드 자체에 조건문 등을 통해 특정 기능을 활성화 또는 비활성화할 수 있게 하여, 브랜치의 복잡한 병합과 cherry-pick을 피할 수 있습니다.
기타 관련 질문과 정보는 아래 링크에서 확인하실 수 있습니다:
- Git에서 Cherry-pick 활용과 관리
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
깃헙 작업 완료된 develop 브랜치 질문
0
77
2
upstream연결하기
0
76
2
gitignore관련 질문
0
86
2
staging area
0
85
2
브랜치 병합 전략에 대한 지식공유자님의 생각이 궁금합니다.
0
97
1
git pull merge 요청 시 draft
0
170
2
rebase 와 3-way merge 의 근본적인 차이
0
103
2
문서가 락이 걸어져있네요.
0
77
1
vscode에서의 github로의 푸시
0
106
2
Git 머지 커밋 되돌리기(revert)와 머지 방식 선택의 안전성 질문
0
144
2
git add 동작 원리에 대한 질문
0
65
2
git flow 문의
0
114
2
git rebase 질문
0
100
2
[추가 질문] 똑같은 브랜치를 다시 pull request하는 경우.
0
172
2
pull request 취소하기
0
705
2
.gitignore
0
78
2
Commit 메시지 변경 방법
0
453
2
switch 와 checkout 차이점.
0
299
1
강의자료 누락, commit 복사질문
0
153
4
강의 교재 다운로드
0
104
1
git init에서 오류 발생
0
283
2
[추가 질문] HEAD 와 COMMIT 관계가 궁금합니다.
0
105
2
HEAD 와 COMMIT 관계가 궁금합니다.
0
140
2
github 협업 내용 관련 질문 있습니다
0
92
2

