git을 이용하여 프로젝트를 관리할 경우, 1차 프로젝트에서는 merge를 사용하였다. 하지만 merge를 사용할 경우, commit이 시간 순서에 맞게 정렬되지도 않고, branch가 섞일 경우 알아보기 힘들게 된다. 이를 해결하기 위해 git rebase를 사용할 수 있다.
Branch가 여럿인 공동 프로젝트에서는, branch 별 merge가 겹치고 겹치다 보면 차후에는 commit이 어떤 작업이었는지 파악하기 어렵다. 한 branch에서 main으로 merge가 되면 commit이 옮겨지고, 그것을 다른 branch에서 main을 merge받으면 commit이 다시 옮겨지며, 그 상태에서 다시 main으로 merge되면 commit이 지나치게 많아진다. rebase를 사용하면 main의 변경 사항들이 branch로 적용되면서, branch의 분기 시점 또한 rebase시점으로 변경되는데다가, commit을 하나로 정리할 수 있어서 history를 알아보기 쉽다. 과정은 다음과 같다.
위의 작업을 거치면 된다. 이때, conflict가 발생하면
위의 과정을 통해 해결 할 수 있다.