[Git]

[Git] 잘못되게 커밋을 쌓았다면? Cherry-pick !

Hevton 2024. 3. 27. 17:35
반응형

 

 

이전 글에서 잠깐 소개했지만, 체리픽을 쉽게 설명하고자 다시 글을 작성합니다.

 

 

체리 픽은, 원하지 않는 브랜치에 커밋을 쌓았을 때 원하는 브랜치의 커밋으로 복사해주는 방법입니다.

즉 원래는 develop 브랜치에서 feature/ui 를 따서 거기에 커밋을 쌓아야 하는데, 실수로 develop 브랜치에 커밋한 경우가 있죠?

그럴 때 사용할 수 있습니다.

 

1. 원래 브랜치를 생성해야 하는 develop 브랜치 시점으로 checkout

2. feature/ui 브랜치 생성

3. feature/ui 브랜치로 checkout  후 git cherry-pick "가져올 커밋 값"

4. develop 브랜치로 checkout 후 잘못 쌓은 커밋 삭제

 

git cherry-pick 은 커밋을 이동하는게 아니라 복사하는 것이기 때문에, 복사된 해시값이 다릅니다. 두 커밋은 독립적으로 존재합니다.

 

만약 git cherry-pick 을 하나의 커밋이 아닌 범위로 지정하고 싶다면

이런 방식을 사용합니다.

git cherry-pick oldest-commit^..lastest-commit

🔥 oldest-commit 뒤에 ^를 붙여줘야 해당 커밋부터 포함이 됩니다.

 

 

 

참고

https://velog.io/@sonypark/git-cherry-pick%EC%9C%BC%EB%A1%9C-%EC%9B%90%ED%95%98%EB%8A%94-%EC%BB%A4%EB%B0%8B-%EA%B0%80%EC%A0%B8%EC%98%A4%EA%B8%B0

 

[Git] cherry-pick으로 원하는 커밋 가져오기

git cherry-pick은 특정 브랜치에서 원하는 커밋을 가져올 때 사용한다. 그 동안 말로만 들었지 실제로 사용해본 적은 없었다. 이번에 코드를 작성하면서 cherry-pick이 필요한 상황이 생겨 사용해보았

velog.io

 

 

 

 

 

반응형