📌 Tool/Git

[Git / Github] Git cherry-pick

스쳐가는비 2023. 3. 2. 20:42

git cherry-pick 이란?

두 브랜치를 병합하는 대신 다른 브랜치의 커밋을 선택적으로 작업 브랜치에 추가해야할 때도 있다.

그럴 경우 git cherry-pick을 사용한다.

 

다음과 같은 경우 사용이 가능하다.

  • 사용자에게 배포된 기능에서 치명적 결함을 발견했다. 이 결함으로 사용자는 정상적인 서비스 이용이 불가능하다. 이미 개발이 완료가 되어 배포중인 다른 커밋들과 상관없이 결함을 수정한 커밋만을 서비스 운영 브랜치에 추가한다.
  • 새로운 기능을 개발해 커밋을 생성했다. 커밋을 생성한 후, 현재 작업 브랜치가 잘못된 것을 발견했다. 의도한 브랜치로 작업 브랜치를 변경한 후, 잘못된 브랜치에서 생성한 커 밋을 현재 작업 브랜치에 추가할 수 있다.

 

우선 test_branch에 수정내용을 push한다.

branch에 push 된 상태

이후 master에 해당 수정 커밋을 cherry-pick 해보자.

현재 master에 기록들이다.

해당 git repository에 terminal을 연 다음 cherry-pick을 한다.

 

git cherry-pick (Commit ID)

 

아래 이미지를 참조하자.

 

그럼 master에 push할 커밋 항목이 아래 이미지와같이 생긴다. 

 

다음은 그냥 여느때와 같이 푸시해주면 끝! 

이렇게 cherry-pick을 사용하면된다.