WeniVooks

검색

깃헙 베이스캠프

충돌내보기

1. 충돌이 났을 경우

초급자에게 가장 어려운 부분은 충돌이 나는 것일겁니다. 같은 내용을 수정하면 충돌이 발생합니다. 이를 해결하는 절차는 아래와 같습니다.

  1. 충돌이 발생한 파일을 엽니다.
  2. 충돌이 발생한 부분을 수정합니다.
  3. 수정이 끝나면 Commit을 누릅니다.
  4. Sync Changes를 누릅니다.

2. 충돌 실습

우선 같은 내용을 수정해야 하므로 README.md 파일을 생성한 레파지토리를 만들어 실습해보도록 하겠습니다. 우선 레파지토리를 만들어주세요.

폴더를 2개 만들어 실습하겠습니다. 철수폴더와 영희폴더입니다. 저는 앞서 실습했었던 testrepo를 클론하여 철수폴더와 영희폴더를 만들겠습니다.

이렇게 각각 폴더에 레파지토리가 클론되었다면 README.md 파일을 수정하겠습니다. 철수 폴더의 README.md 파일입니다.

# testrepo
 
철수 짱짱
# testrepo
 
철수 짱짱

영희 폴더의 README.md 파일입니다.

# testrepo
 
영희 짱짱
# testrepo
 
영희 짱짱

이렇게 수정하고 차례대로 Commit을 누르겠습니다. 먼저 철수는 문제 없이 동작합니다. 영희가 작성한 코드를 Commit하는 것까지는 문제가 없지만 Sync Changes를 누르면 충돌이 발생합니다.

충돌이 발생하면 충돌이 된 파일이 열립니다. 두려워 할 것이 없습니다. 아래 빨간색 네모박스에 있는 메뉴 4개 중 하나를 택하시면 됩니다.

  1. Accept Current Chages: 현재 변경사항을 받아들입니다. 여기서는 영희가 작성한 코드를 반영하겠다는 얘기입니다.
  2. Accept Incoming Changes: 들어오는 변경사항을 받아들입니다. 여기서는 철수가 작성한 코드를 반영하겠다는 얘기입니다.
  3. Accept Both Changes: 둘 다 받아들입니다.
  4. Compare Changes: 변경사항을 비교합니다. 비교창이 열립니다. 비교하시고 수정하시면 됩니다.

Accept Both Changes를 눌러 저는 둘 다 받아보도록 하겠습니다. 오른쪽 하단에 Resolve in Merge Editor를 클릭해주세요.

클릭하면 아래와 같이 수정한 것이 맞는지 확인하는 창이 뜹니다. 누르면 확인하는 창이 두 번이나 더 드는데 확인해주세요.

이게 끝이 아닙니다. 왼쪽에서 한 번 더 Commit을 해주시고 Sync Changes를 눌러주세요. 이제 충돌이 해결되었습니다.

2.3 VSCode에서 해보기2.5 부록