Skip to content

cherry-pick - 필요한 커밋만 가져오기 ​

1. cherry-pick이란? ​

  • git cherry-pick은 다른 브랜치의 특정 커밋(들)을 선택해서, 현재 브랜치에 적용하는 명령어예요.
  • 마치 체리만 집어서 먹듯이, 내가 원하는 '커밋'만 골라서 가져올 수 있어요.

2. 사용 방법 ​

  • 기본 명령어

    bash
    git cherry-pick <커밋 아이디>
  • 여러 커밋을 한꺼번에 가져오려면

    bash
    git cherry-pick <커밋아이디1> <커밋아이디2>
    bash
    git cherry-pick <시작 커밋 아이디>^..<끝 커밋 아이디>

3. 특징 및 장점 ​

  • 필요한 커밋만 선택적으로 적용 가능해요.
  • 병합(merge)과 다르게 전체 브랜치의 변경점이 아닌, 특정 커밋 내용만 반영돼요.
  • 여러 실험용 브랜치에서 원하는 작업만 골라서 메인 브랜치에 추가할 때 유용해요.

4. 주의사항 ​

  • cherry-pick 한 커밋은 새로운 커밋 아이디로 남아요. (기존 커밋을 그대로 가져오는 건 아니에요.)
  • 같은 파일이 수정된 경우, **충돌(conflict)**이 발생할 수 있고, 직접 해결해줘야 해요.

5. 추천 상황 ​

  • 여러 브랜치에서 일부 기능이나 버그 수정 등 딱 필요한 변경만 메인 브랜치에 반영하고 싶을 때
  • 합치고 싶지 않은 실험적인 작업들이 있을 때

정리 ​

  • git cherry-pick <커밋 아이디>: 다른 브랜치의 특정 커밋만 현재 브랜치에 적용
  • 가져온 커밋은 새 커밋 아이디로 생기고, 같은 파일을 고쳤다면 충돌이 날 수 있음

참고: 개인 Notion 학습 노트 (Git 공부)