깃을 머지할 때는 합칠 브랜치에서 합쳐질 브랜치를 머지하면 됩니다.
git checkout master
git merge testing
이런식으로 머지하면 testing 브랜치를 master 브랜치로 합치는 것입니다.
만약 testing 브랜치가 master 브랜치에 기반한222 브랜치 상태에서 merge한다면 fast-forwad.
즉, master 브랜치를 testing 브랜치가 가르키는 커밋으로 이동시키는 것입니다.
하지만 testing 브랜치가 master에 기반하지 않은, 예를 들면 master 브랜치의 전 커밋들 중 한곳에서 파생 된 브랜치라면
Git은 각 브랜치가 가리키는 커밋 두 개와 공통 조상 하나를 사용하여 3-way Merge를 합니다.
단순히 브랜치 포인터를 최신 커밋으로 옮기는 게 아니라 3-way Merge 의 결과를 별도의 커밋으로 만들고 나서 해당 브랜치가 그 커밋을 가리키도록 이동시킵니다. 그래서 이런 커밋은 부모가 여러 개고 Merge 커밋이라고 부릅니다.
'Git' 카테고리의 다른 글
Git clone (터미널) (0) | 2022.05.01 |
---|---|
Git config (0) | 2022.04.30 |
Git Branch (터미널) (0) | 2022.04.28 |
Git 파일 추적, 커밋하기 (1) | 2022.04.28 |
Git 저장소 생성(터미널) (0) | 2022.04.28 |