3 way merge here base(master) there 3 way merge A A A A H B B H C C T T H D T ? conflict 실습: 위의 표와 같은 내용 base는 here과 there의 조상이 된다. here과 there 브랜치를 생성하고 work.txt 파일을 위와 동일하게 수정하였다. here에서 there를 merge 하기 전의 branch 상태 here에서 there을 merge 하면 conflict가 발생한다. work.txt 파일을 살펴보면 마지막 H와 T가 conflict 되었다. 여기서 외부 도구를 이용한 병합 방법에 대해서 알아보겠다. 외부 도구는 여러 가지가 있지만, "p4 merge"라는 tool을 이용해보자. p4merge download: htt..
3 way merge에 대한 개념 및 예제 2 way merge here there 2 way merge A A A H B ? conflict C T ? conflict H T ? conflict branch => here, there ☞ here + there (2 way merge) A + A → A H + B →? 충돌, 알 수 없음 C + T →? 충돌, 알 수 없음 H + T →? 충돌, 알 수 없음 3 way merge here base there 2 way merge 3 way merge A A A A A H B B ? conflict H C C T ? conflict T H D T ? conflict ? conflict branch => here, there base => here, the..
같은 파일, 같은 부분 병합 1. master브랜치에서 work.txt 파일을 생성 후 work 1 버전 생성 2. master브랜치에서 work.txt 파일을 수정 후 master work 2 버전 생성 3. o2브랜치로 전환 후 work.txt파일을 수정 후 o2 work 2 버전 생성(master브랜치의 work.txt의 같은 부분을 수정) 4. master브랜치로 전환 후 o2브랜치를 Merge ☞ Conflict 발생 5. work.txt 파일의 내용의 Conflict발생 부분을 수정 6. git add work.txt 및 git commit 명령(다시 Merge명령을 하는 것이 아님)
같은 파일, 다른 부분 병합 nano편집기로 work.txt를 위와 같이 작성 Add 및 "1"로 commit 브랜치 o2생성 nano편집기로 work.txt를 위와 같이 수정 Add 및 "master work 2"로 commit o2 브랜치로 전환 nano편집기로 work.txt를 위와 같이 수정 Add 및 "o2 work 2"로 commit 브랜치 정보로 1 브랜치에서 master work 2(master), o2 work 2(o2) 브랜치로 나누어진다 master브랜치로 전환 및 o2를 merge해온다. 브랜치 정보로 1 브랜치에서 master work 2(master), o2 work 2(o2) 브랜치로 나누 졌다가 Merge branch 'o2'(master)로 병합되었다. work.txt라는 ..
1. 병합 Merge Merge: 합친다, 병합한다. Base: 합치려고 하는 브랜치의 공통의 조상 Merge commit: 두개의 브랜치가 합쳐져서 만들어진 브랜치 예) Master 브랜치로부터 버전들이 만들어지면서 Apple 브랜치, google 브랜치로 나누어진다. 그리고 나누어진 Apple 브랜치의 코드를 Master 브랜치에서도 적용하고 싶다. 그럴 때 Master 브랜치와 Apple 브랜치를 Merge(병합) 한다. 여기서 Apple 브랜치와 Master 브랜치의 공통의 조상을 Base, Merge 된 브랜치를 Merge Commit이라고 한다. 2. 병합: 서로 다른 파일 병합 nano편집기로 work.txt파일을 생성하고 1이라는 문서를 작성한다. work.txt를 Staging Area로..