Section 3. 차원 넘나들기 - (4) 충돌 해결하기

jaegeunsong97·2023년 3월 11일
0

[Inflearn] Git/Github

목록 보기
13/14
post-thumbnail

📕 브랜치 간 충돌


  • 파일의 같은 위치에 다른 내용이 입력된 상황

📜 상황 만들기

  1. conflict-1, conflict-2 브랜치 생성

  2. main 브랜치

  • Tigers의 managerKenneth로 변경
  • Leopards의 coachNicholas로 변경
  • Panthers의 coachShirley로 변경
  • 커밋 메시지: Edit Tigers, Leopards, Panthers
  1. conflict-1 브랜치
  • Tigers의 managerDeborah로 변경
  • 커밋 메시지: Edit Tigers
  1. conflict-2 브랜치 1차
  • Leopards의 coachMelissa로 변경
  • 커밋 메시지: Edit Leopards
  1. conflict-2 브랜치 2차
  • Panthers의 coachRaymond로 변경
  • 커밋 메시지: Edit Panthers

📕 merge 충돌 해결하기


git merge conflict-1로 병합을 시도하면 충돌 발생

  • 오류 메시지와 git status 확인
  • VS Code에서 해당 부분 확인


VS Code의 현재 버전에서는 충돌 난 부분 상단의 글자 버튼들 (Accept Current...) 등이 나타나지 않습니다.
충돌시 직접 해당 부분을 직접 타이핑해서 수정한 다음 merge를 계속 진행하시면 됩니다.

당장 충돌 해결이 어려울 경우(충돌한 부분이 엄청 많은 경우!) 아래 명령어로 merge 중단

git merge --abort

해결 가능 시 충돌 부분을 수정한 뒤 git add ., git commit으로 병합 완료

📕 rebase 충돌 해결하기


  • 충돌되는 부분 하나하나 처리해주기

conflict-2에서 git rebase main로 리베이스 시도하면 충돌 발생

  • 오류 메시지와 git status 확인
  • VS Code에서 해당 부분 확인

당장 충돌 해결이 어려울 경우 아래 명령어로 rebase 중단

git rebase --abort

📜 해결 가능 시

  • 충돌 부분을 수정한 뒤 git add .
  • 아래 명령어로 계속
git rebase --continue
  • 충돌이 모두 해결될 때까지 반복

main에서 git merge conflict-2로 마무리

conflict-1, conflict-2 삭제

  • 사용하지 않는 branch는 바로바로 삭제 해주기!

참조

https://www.yalco.kr/

profile
현재 블로그 : https://jasonsong97.tistory.com/

0개의 댓글