-
"fast-forward-merge" vs "3-way-merge"Git 2021. 4. 12. 16:36
fast-forward-merge
- 병합하려는 커밋이 단순 이전버전을 가리키면서 병합되는 방식을 뜻한다.
- 이 말은 즉, Master 브랜치에 변경사항이 없을 경우 특정 브랜치에서 Master로 병합할 때 fast-forward-merge가 발생한다.
Example
A <- B <- C (Master Branch)
↑
←- D <- E (Feature Branch)
Fast Forward Merge
A <- B <- C <- D <- E (Master Branch) (Feature Branch)3-way-merge
- Merge 작업을 할 때 공통 부모를 가리키는 커밋을 중심으로 merge 커밋이 생성되는 방식을 3-way-merge라고 한다.
- Master에도 변경 사항이 생기고, 특정 Branch에도 변경사항이 생겼을 때, 양쪽 변경 점을 전부 병합하고 싶다 가정한다면 이때 Merge Commit이 생기면서 양쪽 변경점을 모두 포함한 상태로 Merge가 된다.
Example
A <- B <- C <- D <- E (Master Branch)
↑
←- X <- Y (Feature Branch)
3 Way Merge
Merge Commit
↓
A <- B <- C <- D <- E <------ F (Master Branch) (Feature Branch)
↑ ↓
←- X <- Y ←←←←'Git' 카테고리의 다른 글
Git Tag (0) 2021.04.13 "git pull" vs "git pull --rebase" (0) 2021.04.07 git config 설정 (0) 2021.04.05 Git 정의 (0) 2021.02.05