Git & GitHub 공부 - Day3

surra77·2024년 1월 26일
0

충돌(conflict) 해결하기

merge에서 충돌이 난 경우

  • main과 conflict-1을 merge했는데 충돌이 발생

    그러면 merging 상태가 되고 어디서 충돌이 발생했는지 알려줌

  • 충돌이 발생한 곳으로 가면 아래와 같은 메뉴가 뜨는데

    현재 변경 사항 수락은 원래 있던 내용이 그대로 유지되고 수신 변경 사항 수락은 합치려는 쪽의 내용이 반영이 됨
    그리고 두 변경 사항 모두 수락은 두 개의 내용이 모두 반영이 됨

  • 위 메뉴 중 원하는 걸 선택하고 저장한 다음 add를 해주고 커밋을 하면 충돌이 해결되어 잘 merge가 된다

  • 소스트리로 봤을 때

rebase에서 충돌이 난 경우

  • main과 conflict-2를 rebase했는데 충돌 발생

  • 마찬가지로 충돌이 난 곳으로 가면 변경 사항을 선택하는 메뉴가 뜨고 원하는 메뉴를 선택 후 저장한 다음 커밋

  • 다시 reabse를 진행하도록 rebase --continue를 함. 그런데 충돌이 2개라 다시 merging 상태가 됨

  • 다시 원하는 변경 이력을 선택하고 커밋

  • 그리고 다시 rebase --contiue를 진행하면 성공적으로 업데이트. 다시 main으로 가서 merge를 해주면 잘 rebase가 된다

  • 소스트리로 봤을 때


push와 pull

push

  • 먼저 원격 저장소 주소를 등록해야 됨

  • 깃허브에 레파지토리를 만들고 그 주소를 remote 해줌 이때 add origin 하고 주소를 입력

  • 그리고 remote -v를 하면 잘 저장이 되었는지 확인할 수 있음

  • 그리고 push를 해주면 내 깃허브 레파지토리에 잘 들어가게 된다
    이때 orgin main이라고 했기 때문에 main branch로 들어간다

pull

pull은 깃허브에서 파일을 수정했을 경우 내 깃과는 이력이 달라지므로 깃에 깃허브의 변경사항을 가져오는 것이다
git pull이라고 해주면 된다

profile
개발자 준비생

0개의 댓글