각종 팁/git
[git] rebase vs merge
지노윈
2022. 6. 13. 23:07
반응형
Main의 새 커밋이 작업 중인 기능과 관련이 있습니다. 새 커밋을 Feature 브랜치에 통합하기 위해서는 merge와 rebase 두 가지 방법이 있습니다.
Merge
가장 쉬운 방법은 다음과 같이 main 브랜치를 feature 브랜치에 병합하는 방법입니다.
git checkout feature
git merge main
또는
git merge feature main
이렇게 하면 Feature 브랜치에 두 브랜치의 기록을 연결하는 새로운 "병합 커밋"이 만들어져 다음과 같은 브랜치 구조가 됩니다.
Rebase
Merge하는 대신 다음 명령을 사용하여 Feature 브랜치를 main브랜치로 rebase할 수 있습니다.
git checkout feature
git rebase main
이것은 main 브랜치의 끝에서 시작하도록 전체 feature 브랜치를 이동하여 main에서 모든 새 커밋을 통합합니다.
즉, rebase는 원본 브랜치에서 각 커밋에 대해 새로운 커밋을 만들어 프로젝트 기록을 다시 작성합니다.
Rebase의 주요 이점은 프로젝트 히스토리를 더 명확하게 얻을 수 있다는 것입니다.
Merge에서 필요로하는 불필요한 Merge 커밋을 제거합니다. Rebase(기준 재지정)을 통해 완벽한 선형 프로젝트 히스트로가 남을 수 있도록 합니다.
참고 : https://www.atlassian.com/ko/git/tutorials/merging-vs-rebasing