cherry pick 질문입니다.
2
작성한 질문수 3
강의 8:16 에서 test 브랜치 쪽의 노란색 커밋을 cherry pick 해서 가져왔는데 main 브랜치 쪽의 초록색 커밋과 충돌되어서 둘 중에 하나를 선택한 상황인데
만약에 conflict가 발생하지 않으면서 노란색 커밋만 가져와서 최종적으로 main 브랜치에 [ 빨간색, 초록색, 노란색 ] 을 가진 커밋으로 만들 수 있는 방법은 없는 건가요?
main 브랜치 쪽의 [ 빨간색, 초록색 ] 에서 노란색 커밋만 추가하고 싶은 경우도 있을 것 같아서 질문합니다.
답변 1
0
안녕하세요, 인프런 AI 인턴입니다. 창한님, Cherry-pick을 사용하여 특정 커밋을 다른 브랜치에 반영할 때 충돌 문제와 관련하여 질문해 주셨네요.
Cherry-pick과 충돌 해결
git cherry-pick은 특정 커밋을 선택하여 현재 체크아웃된 브랜치에 적용하는 명령어입니다. Cherry-pick을 사용할 때 충돌이 발생하는 이유는 두 브랜치가 동일 파일의 동일 내용을 변경했기 때문입니다. 하지만, 충돌 없이 특정 커밋을 추가하는 방법도 있습니다:
Rebase와 Cherry-pick의 차이:
rebase는 전체 커밋 히스토리를 재구성하는 반면,cherry-pick은 특정 커밋만 선택하는 방식입니다.
충돌 없는 Cherry-pick 사용법:
- 만약 cherry-pick 중 충돌이 발생하지 않도록 하고 싶다면, 충돌을 피할 수 있는 상황을 만들거나 수동으로 충돌을 해결한 후에 cherry-pick을 수행합니다.
- 예로,
[ 빨간색, 초록색, 노란색 ]순서로 커밋을 만들고 싶다면,노란색커밋에서 수정된 코드가초록색커밋에서 수정되지 않아야 합니다.
- 만약 cherry-pick 중 충돌이 발생하지 않도록 하고 싶다면, 충돌을 피할 수 있는 상황을 만들거나 수동으로 충돌을 해결한 후에 cherry-pick을 수행합니다.
기타 대안:
- 가능하면
노란색 커밋이전에초록색 커밋을 고정하고 작업하는 것이 유리합니다.
- 충돌이 없어도
[ 빨간색, 초록색, 노란색 ]으로 커밋을 재작성하려면, 현재 브랜치를노란색 커밋을 추가하려는 순서로 재배열한 후에 병합하시기 바랍니다.
- 가능하면
참고 자료
여기 유사한 개념에 대해 설명하는 게시물을 참고하시면 더욱 도움이 될 것입니다:
- Git Cherry-pick 개념 및 실습
질문에 대한 충분한 해답이 되었기를 바랍니다. 혹시 추가로 궁금한 점이 있다면, 계속 질문해 주세요. 곧 지식공유자께서 추가적인 설명을 드릴 수 있을 것입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
깃헙 작업 완료된 develop 브랜치 질문
0
88
2
[질문] git-flow 에서 release 브랜치 생성
0
69
1
upstream연결하기
0
88
2
gitignore관련 질문
0
95
2
staging area
0
93
2
브랜치 병합 전략에 대한 지식공유자님의 생각이 궁금합니다.
0
113
1
git pull merge 요청 시 draft
0
204
2
rebase 와 3-way merge 의 근본적인 차이
0
116
2
문서가 락이 걸어져있네요.
0
85
1
vscode에서의 github로의 푸시
0
127
2
Git 머지 커밋 되돌리기(revert)와 머지 방식 선택의 안전성 질문
0
155
2
git add 동작 원리에 대한 질문
0
70
2
git flow 문의
0
122
2
git rebase 질문
0
108
2
[추가 질문] 똑같은 브랜치를 다시 pull request하는 경우.
0
185
2
pull request 취소하기
0
805
2
.gitignore
0
84
2
Commit 메시지 변경 방법
0
610
2
switch 와 checkout 차이점.
0
317
1
강의자료 누락, commit 복사질문
0
159
4
강의 교재 다운로드
0
106
1
git init에서 오류 발생
0
302
2
[추가 질문] HEAD 와 COMMIT 관계가 궁금합니다.
0
111
2
HEAD 와 COMMIT 관계가 궁금합니다.
0
149
2





