Git 충돌 병합함에 있어 적합한 VS Code 기능을 소개합니다.
1. 충돌상황
Git 소스코드 충돌이란, 두 명 이상의 작업자가 동일한 파일을 작업했을 때 주로 발생합니다.
본인이 작업한 내용을 원격(REMOTE)에 반영하기 전 PULL 수행과정에서 동일 파일 내에 작성자의 수정범위와 이전 작성자의 수정범위가 겹치는 경우 발생합니다.
[원본 : Base]
작업자 : 왕씨 작업내용 : "main" 브랜치 커밋
[작성자의 수정내용 : LOCAL]
작업자 : 왕씨 작업내용 : "main" 브랜치 커밋 1) 작업자 : 육씨 작업내용 : A Part 작업중
[이전 작성자의 수정내용 : REMOTE] :: 작성자가 PULL 받게되는 내용
작업자 : 왕씨 작업내용 : "main" 브랜치 커밋 1) 작업자 : 황씨 작업내용 : A Part 완료 2) 작업자 : 박씨 작업내용 : B Part 완료
✻ 충돌 범위
2. VS Code에서 확인하기
① 충돌이 발생한 파일의 경우 좌측과 같이 붉은 색으로 강조됨.
② 빠른 병합도구로 충돌 범위를 빠르게 병합할 수 있음.
- Accept Current Change : 현재(LOCAL) 기준으로 병합 (현 작성자 기준)
- Accept Incoming Chnage : 원격(REMOTE) 기준으로 병합 (이전 작성자 기준)
- Accept Both Changes : 현재(LOCAL), 원격(REMOTE) 모두 적절히 뒤섞인 병합
- Compare Changes : 현재(LOCAL)과 원격(REMOTE)의 차이 비교창이 열림. (읽기전용)
③ "병합 편집기에서 확인" 버튼 클릭 하여, 병합화면으로 이동하여 상세 내용 병합
3. VS Code 병합 편집기
아래 사진과 같이 3가지 영역으로 보여지며, 상단의 두 영역의 수락버튼들을 조작하여 최종 병합(Merge) 결과를 확인할 수 있다.
수신 : 원격(REMOTE) 작성내용
현재 : 로컬(LOCAL) 작성내용
결과 : 위 영역에서 수락한 내용들의 결과 출력
[병합 편집기 분석] |
위에서 설명한 충돌 상황을 아래와 같이 병합한 결과이다. 결과창에서 직접 수정한 경우 "수동해결 | 기본으로 다시설정" 문구가 출력되어 표기하는 데, 기본으로 다시설정을 클릭하면 병합내용이 원복된다.
1) 수신 수락
2) 현재 수락
3) 결과창에서 편집 (현재의 넘버링 1을 3 순번으로 변경)
0 댓글