Jveloper

Git cherry-pick에 대해서 설명해주세요. 본문

끄적끄적

Git cherry-pick에 대해서 설명해주세요.

Jveloper 2019. 11. 26. 15:50

만약 커밋 번호를 알고 있다면 원하는 브랜치에 해당하는 커밋내용만 반영, 업데이트 할 수 있습니다.

이런 목적으로 cherry-pick을 많이 사용합니다.

 

예를 들어 branchA에서 커밋한 내용 중 커밋 하나만 branchB에 반영하고 싶은 경우가 cherry-pick 사용에 좋은 예 입니다.

cherry-pick은 언제 사용할까?
아직 기존의 Pull Request가 merge가 안된경우 cherry-pick을 사용하여 현재 branch에 반영한뒤 계속해서 필요한 작업을 이어나갈 수 있습니다.
만약 cherry-pick을 사용하지 않는다면 complick가 발생되기 때문입니다.

cherry-pick은 왜 사용할까?

cherry-pick이 없다면 최소1개의 파일에서 변경된 부분을 branch에 있는 코드로 복사 붙여넣기 해야하는 상황이 올지도 모릅니다.
큰 코드를 다룬다면 열개가 넘는 파일에서 변경된 부분만 찾아 복사 붙여넣기 하고 제대로 복사 붙여넣기가 되었나 확인하고,
유닛 테스트와 메뉴얼 테스트를 다시 확인해야합니다.
큰 작업이라면 테스팅을 다시 하는 작업이 만만치 않을것입니다.
비록 전 branch에서 전부 테스트 했더라도 이 branch에서 잘 작동한다는 보장이 없으니 반드시 다시 테스팅을 해야하는데 그 시간에 코드를 복붙하고 검증하는 시간까지 하면 코드 양에 따라 많은 시간이 들어갈것입니다.

cherry-pick을 사용하면 복붙하는 상황을 모면할 수 있습니다.

Comments