commit history가 다르다.
1. master branch에서 dev branch (clean) 생성
2. clean 파일에서 청소기 완료
3. finish 청소기 commit
4. master branch에서 merge-plant branch 생성
5. merge-plant branch에서 plant 파일 잡초뽑기 finish
6. finish 잡초뽑기 commit
7. plant 파일에서 물주기 finish 후 commit
8. dev branch에서 clean 파일의 세탁기 finish하고 commit
9. 건조기 finish하고 commit
10. merge-plant branch에서 finish 분갈이 후 commit
11. dev branch에서 merge merge-plant into dev
12. master branch에서 rebase-dev branch와 rebase-plant branch 생성
13. rebase-dev branch에서 clean 파일 청소기 finish 후 commit
14. rebase-dev branch에서 세탁기 finish 후 commit
15. rebase-plant branch에서 잡초뽑기 finish 후 commit
16. 물주기 finish 후 commit
17. rebase-dev branch에서 건조기 finish 후 commit
18. rebase-plant branch에서 분갈이 finish 후 commit
19. rebase-dev branch에서 rebase-plant를 rebase하기 (Rebase rebase-dev onto rebase-plant)
20. master branch에서 new-dev branch와 new-plant branch 생성
21. new-dev branch에서 clean 파일 내 청소기 finish 후 commit
22. 세탁기 finish 후 commit
23. new-plant branch에서 잡초뽑기 finish 후 commit
24. 물주기 finish 후 commit
25. new-plant branch에서 new-plant-food branch 생성
26. new-plant-food branch에서 food 파일 내 mainDish finish 후 commit
27. pasta finish 후 commit
28. drink finish 후 commit
확인해보면 clean 파일은 합쳐지지 않았고 food 파일은 finish, plant 파일은 분갈이를 아직 안한 상태이다.
29. master branch로 먼저 완료된 food 파일 먼저 rebase하면
But 완성되지 않은 plant 파일도 함께 왔기 때문에 new-plant와 new-plant-food를 분리해주어야 한다.
UI로는 어려워서 Terminal에서 명령어로 입력
30. CLI로 git rebase --onto master new-plant new-plant-food
입력
31. 그후, 분리되면 Rebase new-plant-food onto master 진행