만약, branch1 -> main으로 커밋하려고 하는 상황
1. branch1 커밋 목록 확인
git checkout branch1 // (branch1로 체크 아웃)
git log
or
git log -4 // 보고 싶은 개수 제한
만약 git log로 했을 경우, 목록이 엔터를 누르면 계속 뜨게 되는데
+ 대충 경고문 ~ (press return)
이 때, 목록 보기를 중단하고 싶다면 'q'를 누르면 원래의 커맨드 라인으로 돌아온다
2. 머지할 대상 브랜치로 체크아웃
git checkout main
3. 특정 커밋 머지하기
git cherry-pick commit1_hash commit2_hash commit3_hash ... // 원하는 커밋 해시 나열
or
git cherry-pick commit1_hash^..commit3_hash // 커밋 범위 지정 (가장 오래된 커밋^..가장 최신 커밋)
해시 : commit 옆에 적힌 40자리 문자열

충돌이 뜨면 침착하게 github desktop에서 사용할 파일 선택해주고, continue cherry-pick + push origin main 까지 해주면 끝~!
'공부 > Git, GitHub' 카테고리의 다른 글
| [모두의 깃&깃허브]1장. 준비하기 (0) | 2024.05.28 |
|---|---|
| [github]특정 커밋까지 새로운 브랜치 만들기 (0) | 2024.04.06 |
| [git]non-monotonic index error (0) | 2023.11.19 |
| [github]Files too large (100Mb 이상) (0) | 2023.10.04 |
| 커밋 메시지로 쓰이는 영어 단어들 간단 정리 (0) | 2023.05.12 |