🔥 git cherry-pick

216자
3분

git cherry-pick 명령어는 다른 브랜치의 특정 커밋을 현재 브랜치로 가져오는 데 사용됩니다. 이 기능은 특정 변경 사항만을 선택적으로 적용하고 싶을 때 유용합니다.

cherry-pick의 기본 사용법

git cherry-pick [커밋 해시] 명령어를 사용하여 다른 브랜치의 특정 커밋을 현재 브랜치로 가져올 수 있습니다.

shell
# 특정 커밋을 현재 브랜치로 가져오기
git cherry-pick 1a2b3c4d
shell
# 특정 커밋을 현재 브랜치로 가져오기
git cherry-pick 1a2b3c4d

위 명령어는 1a2b3c4d라는 해시를 가진 커밋을 현재 브랜치에 적용합니다.

여러 커밋 cherry-pick하기

git cherry-pick은 여러 커밋을 연속적으로 적용할 수도 있습니다.

shell
# 여러 커밋을 연속적으로 cherry-pick
git cherry-pick 1a2b3c4d^..5d6e7f8g
shell
# 여러 커밋을 연속적으로 cherry-pick
git cherry-pick 1a2b3c4d^..5d6e7f8g

이 명령은 1a2b3c4d부터 5d6e7f8g까지의 커밋을 현재 브랜치에 적용합니다.

cherry-pick 중 충돌 해결하기

cherry-pick 과정에서 충돌이 발생할 수 있습니다. 이 경우, 충돌을 수동으로 해결한 후 git cherry-pick --continue를 사용하여 작업을 완료합니다.

shell
# 충돌 해결 후 cherry-pick 계속
git add [충돌난 파일]
git cherry-pick --continue
shell
# 충돌 해결 후 cherry-pick 계속
git add [충돌난 파일]
git cherry-pick --continue

cherry-pick 취소하기

cherry-pick을 취소하고 싶을 때는 git cherry-pick --abort 명령어를 사용합니다.

shell
# cherry-pick 취소
git cherry-pick --abort
shell
# cherry-pick 취소
git cherry-pick --abort

cherry-pick의 사용 시나리오

git cherry-pick은 버그 수정이나 소규모 기능 추가와 같이 특정 커밋만을 다른 브랜치로 이동시킬 필요가 있을 때 유용합니다. 특히 큰 프로젝트에서 핫픽스와 같이 일부분만을 빠르게 적용하고자 할 때 효과적입니다.

연습문제

  1. 다른 브랜치의 특정 커밋을 현재 브랜치로 cherry-pick하는 과정을 연습해보세요.
  2. 여러 커밋을 연속적으로 cherry-pick하는 방법을 시도해보세요.
  3. cherry-pick 중 발생한 충돌을 해결하는 방법을 연습해보세요.
  4. 잘못된 cherry-pick을 취소하는 방법을 연습해보세요.

YouTube 영상

채널 보기
함수 타입과 Hom-Set 이해하기 | 프로그래머를 위한 카테고리 이론
매번 ValidationPipe 복붙하세요? NestJS 전역 파이프로 한 번에 해결하기 | NestJS 가이드
Writer 펑터와 클라이슬리 카테고리 | 프로그래머를 위한 카테고리 이론
함수형 데이터 타입 | 프로그래머를 위한 카테고리 이론
클로드 섀넌이 들려주는 정보 이론 이야기
C++ 속의 펑터 | 프로그래머를 위한 카테고리 이론
미들웨어 vs 가드, 왜 NestJS에서는 가드가 더 똑똑할까? | NestJS 가이드
NestJS 빌트인 파이프 ParseIntPipe, ParseUUIDPipe 사용하기 | NestJS 가이드