[Git] 3-Way Merge

노성빈·2024년 2월 9일

Git

목록 보기
13/15
post-thumbnail

📌3-Way Merge


3-Way Merge?


💡 base에서 갈라진 branch를 다시 합쳐준다.
💡 충돌이 발생한다면 해결 후 합친다.
💡 base branch, master branch, feature branch, branch가 3가지 이므로 3-Way Merge이다.

예시


master branch에서는 글쓰기 기능을, idea branch에서는 아이디 중복체크 기능을 만들려고 한다.

1. idea Branch를 원하는 부분에 생성한다

두 branch의 head가 모두 회원가입 commit에 위치한다.

2. 각자 작업을 수행한다

각자 마지막 commit에 head가 위치한다.

3. 두 Branch를 합친다.

master에 idea를 가져왔으므로 master의 포인터만 이동한다.

idea는 독립적이기 때문에 아직 합쳐지지 않은 상태다.

충돌이 발생하지 않는다면 메모 작성 후 끝난다.

4. 충돌이 발생할 경우

충돌 해결을 요구하는 메세지가 출력된다.

충돌 해결


충돌이 발생한 파일 - 같은 파일 수정

<<<<<<<와 >>>>>>> 사이에 충돌 내용이 표시된다.

표시를 지운 후 수정하면 된다.

충돌이 발생한 파일 - 수정한 파일을 한쪽에서 삭제

충돌한 파일을 지우고 싶지 않은 경우

git add <file name>

충돌한 파일을 지우고 싶은 경우

git rm <file name>

0개의 댓글