danbibibi
article thumbnail
Published 2023. 12. 1. 17:12
[Git] cherry-pick DevOps

cherry-pick

다른 브랜치에 있는 커밋을 선택적으로 내 브랜치에 적용시킬 때 사용하는 명령어

# git cherry-pick {commit hash}
$ git cherry-pick 555f8b4

# 한번에 여러개의 커밋을 반영하고 싶은 경우
$ git cherry-pick 555f8b4 8f618a0 480b6bb
$ git cherry-pick 555f8b4..480b6bb # 가져오고 싶은 커밋 범위 지정

 

아래는 cherry-pick을 이용하여 현재 branch y에 branch x의 3개의 커밋을 반영한 모습이다.

코드에 대한 수정사항, 커밋 로그, 작성자 역시 그대로 가져온다.

 

cherry-pick 충돌 해결

다른 브랜치의 커밋 사항을 가져오므로 수정 사항이 현재 브랜치의 코드에 맞지 않는 경우가 있다.

이 경우 충돌이 발생하므로, cherry-pick을 중단하거나, 충돌 상황을 해결 후 cherry-pick을 다시 진행할 수 있다.

 

중단: --abort

$ git cherry-pick --abort

 

계속 진행: --continue

$ vi {file path} # 충돌이 발생한 코드 수정
$ git add {file path}
$ git cherry-pick --continue

'DevOps' 카테고리의 다른 글

[Docker] Docker 정리  (0) 2024.02.28
CI/CD(지속적 통합/배포) 정리  (0) 2024.02.28
[Git] 커밋 메시지 템플릿 설정  (0) 2023.11.30
[Git] 3. Git branch  (0) 2023.09.01
[Git] 2. Git 기초  (0) 2023.08.09
profile

danbibibi

@danbibibi

꿈을 꾸는 시간은 멈춰 있는 것이 아냐 두려워하지 마 멈추지 마 푸른 꿈속으로