ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Git - merge
    Git/Git 기초 2022. 1. 4. 23:40

    병합(Merge)

    병합이란?

    여러 개의 브랜치를 하나로 모으는 것을 의미한다. Git에서는 merge 명령어를 사용해서 브랜치를 합치는 작업을 수행한다.

    이러한 merge를 하는 방식에는 두 가지가 종류가 존재하는데, "fast-forward merge"와 "3-way merge" 방식이 존재한다.

     

     Fast-Forward Merge

    예를 들어, 아래 사진과 같이 "master" 브래치에서 분기하는 "bugfix"라는 브랜치가 있다고 가장한다.

     

     

    이 "bugfix" 브랜치를 "master" 브랜치로 병합할 때, "master" 브랜치의 상태가 이전부터 변경되어 있지 않으면 매우 쉽게 병합할 수 있다.

     

     

    "bugfix" 브랜치의 이력은 "master" 브랜치의 이력을 모두 포함하고 있기 때문에, "master" 브랜치는 단순히 이동하기만 해도 "bugfix" 브랜치의 내용을 적용할 수 있다. 위와 같은 병합을 "fast-forward merge"라고 한다.

     

    3-Way Merge

    "bugfix" 브랜치를 분기한 이후에 "master" 브랜치에 여러 가지 변경 사항이 적용되는 경우도 존재한다.

     

     

    이 경우에는 "master" 브랜치 내의 변경 내용과 "bugfix" 브랜치 내의 변경 내용을 하나로 통합할 필요가 있다.

     

     

    이러한 상황에서 병합을 하게 되면 "merge commit(병합 커밋)"을 실행하게 된다. 병합 완료 후, 통합 브랜치인 "master" 브랜치로 통합된 이력이 위 사진과 같이 생기게 된다.

    위와 같은 병합을 "3-way merge"라고 한다.


    출처

    https://backlog.com/git-tutorial/kr/stepup/stepup1_4.html

     

    728x90

    'Git > Git 기초' 카테고리의 다른 글

    Git - remote & push & pull & clone  (0) 2022.01.11
    Git - rebase  (0) 2022.01.06
    Git - branch  (0) 2022.01.04
    Git - Git 상태 복구 (reset & reflog & amend)  (0) 2022.01.04
    Git - Git 기본기 (init & add & commit)  (0) 2022.01.03

    댓글

Designed by Tistory.