[git] | cherry pick

강지현·2024년 7월 16일
0

git

목록 보기
6/9
post-thumbnail

Cherry pick

정의

  • 내가 생각하기에 가장 좋은 것만을 빼가는 것을 의미

  • 즉, 다 죽어가는 branch에서 괜찮은 부분만 빼서 살릴 수 있는 방법을 탐구하는 것

개발을 하다가 망해서 되돌아가기에 너무 멀리 왔지만 필요한 것만 골라서 사용하고 싶다

Game 예시

  • 순서대로 아이템을 모았지만 키우다 보니 망한 경우 중간에 마음에 드는 것만 빼오는 것과 유사함

Cherry pick

  • 새로운 branch에서 commit함

  • But 하다가 망해서 branch를 버려야 하는 상황

  • 그러나 commit 2b는 괜찮은 기능이 있어서 사용하고 싶음


실습

1. 로그인 파일에서 기능 추가하기 (페이스북으로 로그인)

2. 로그인 branch 생성하고 commit

3. 로그인 파일에서 기능 추가하기 (애플로 로그인)

4. 로그인 branch에 commit

5. 로그인 파일에서 기능 추가하기 (카카오톡으로 로그인)

6. 로그인 branch에 commit

7. login branch가 망했는데 apple으로 로그인 기능은 쓸만한 경우

8. master branch에서 new-login branch를 생성

9. 로그인 파일에서 기능 추가하기 (google로 로그인)

10. new-login branch에 commit

11. add apple으로 로그인을 cherry pick

12. 같은 파일이기 때문에 충돌 발생

13. 원하는 기능 선택하여 save

14. 이후 add apple로 로그인으로 commit

15. 나중에 카카오톡으로 로그인도 cherry pick

16. 동일하게 하여 add kakaotalk 로그인 commit

17. master branch에서 follow branch 생성

18. 팔로우 파일에서 기능 추가(facebook 팔로우 기능)하고 commit

19. follow branch에서 add facebook으로 로그인이 필요하여 cherry pick

profile
시작!!

0개의 댓글