[Git] git cherry-pick 특정 커밋 가져오기

2025. 10. 18. 19:21Dev./Git

728x90
반응형

전체 브랜치를 합치지 않고 특정 커밋만 가져오고 싶을때 사용한다

사용법

사용전 내가 가져올 커밋의 ID를 가져와야 한다.

#내가 원하는 다른 브랜치 커밋ID 확인
git log --oneline --graph --all

단일 커밋

# 원하는 브랜치로 이동
git checkout main

# 특정 커밋을 cherry-pick
git cherry-pick <커밋ID>

여러개의 커밋

//여러개
git cherry-pick <커밋ID> <커밋ID>
//연속된 커밋 범위
git cherry-pick <커밋ID 1>^..<커밋ID 2>
  • <커밋ID 1>^..<커밋ID 2> - ID1부터 ID2까지 모든 커밋이 차례대로 적용 (ID1,ID2 모두 포함)

커밋 메세지 수정하며 가져오기

git cherry-pick -e <커밋ID>
  • -e 옵션: 메시지 편집 창 열기
  • 혹시 cherry-pick 끝났는데 커밋메세지를 수정하고 싶다면  git commit --amend -m "새로운 커밋메세지" 

충돌처리

# 충돌 발생 시 파일 수정 후
git add .

# cherry-pick 계속
git cherry-pick --continue

# 포기하고 원래 상태로 돌아가기
git cherry-pick --abort

cherry-pick 완료 후 확인

//현재 브랜치 로그
git log --oneline

푸시

원격에 pushgit push origin main

// 메세지 수정등으로 커밋 해시가 바뀐경우
git push origin main --force
  • --force사용은 공동 브랜치에선 반드시 사전에 알리기
728x90
반응형

'Dev. > Git' 카테고리의 다른 글

[Git] README 파일에 이미지 올리기  (0) 2025.10.30