Git 에서 Merge와 Rebase를 사용해
신규 개발한 branch의 내용을
main(master) branch에 합칠 수 있는데
위 이미지를 예제로 보면
main이 master(origin) branch(기존)
feature 가 들어온 요건을 개발하려고
새로 작성한 branch라고 보면 된다(신규)
각각 기능 차이를 한번 보자면
먼저 Merge의 경우에는
다른 branch에서 개발하면서 commit한 내용들을
선택한 브랜치에 하나의
Merge commit으로 병합하게 된다
이미지를 보면 develop branch에서
커밋은 3번 이루어졌지만
실제 master branch로 병합할 때
한번의 merge commit으로 들어가는 것이 보인다
Rebase의 경우에는
base를 다시 잡는다고 보면 되는데
현재 base의 위치를 rebase 하려는
branch의 최신 commit으로 변경해준다
이미지를 보면 merge를 진행한 후
다른 branch에서 3번 커밋을 진행하고
해당 branch를 rebase 시키니
3번 커밋이 이루어진 곳을 base로 잡아주기 때문에
타 branch의 commit 3개가
직선으로 쭉 들어온 것이 보인다
정리해보자면 Merge나 Rebase나
branch간 내용을 합치기 위한 방법이고
Merge의 경우에는
다른 branch에서 여태까지 commit한 내용을
하나의 merge commit으로 합치는 것이고
Rebase의 경우에는
base의 위치를 변경해서
다른 branch에서 commit한 내역을 최신으로 보고
그대로 끌어오는 식으로 합치는 것이다
'Tools > etc' 카테고리의 다른 글
Git Bash 시작위치 변경방법 (4) | 2021.12.28 |
---|---|
이클립스 Local History 확인방법 (0) | 2021.12.26 |
깃허브(Github) Pull requests 개념정리 및 예제 (0) | 2021.11.24 |
github branch 삭제방법 (0) | 2021.11.05 |
github branch 추가방법 (0) | 2021.11.05 |
댓글