취업 준비/Git

3. 충돌 해결하기

openingsound 2020. 7. 8. 00:02

원격 저장소(github)에 더 앞선 버전이 있을경우 Pull을 눌러 업데이트 가능!

 

해결 법

1. 에디터를 이용한 해결

  • 읽어가 며 줄 지우기(shift + del)를 하며 수정 한다.

2. 병합툴을 이용한 해결

  • '내것' 혹은  '저장소' 것을 사용하여 해결 

3. 되돌리기 사용

  • reset 사용(비추천)
    • 쉽지만 이전 커밋이 사라진다.
    • CLI 에서 push --force 해야 함
    • 혹은 원격/master를 master에 병합하고 푸시 하면됨
    • source tree에는 강제 푸시가 안됨!!

 

  • 브랜치 사용해서 되돌리기 (추천)
    • 장점 : 쉽다. 기록이 다 남아 있다.
    • 단점 : 트리가 지저분해 진다.
    •  

되돌릴 커밋 대상으로 update-branch를 만든후 master에 merge해주고 push한다!

  • revert 사용하기
    • 해당 커밋에서 커밋 되돌리기를 하면됨
    • 해당 커밋이 되기전의 내용이 남지만 되돌리기하기 전의 내용도 남아 있음
    • 즉 커밋을 보존하면서 내용만 바꾸는 것

  •  revert 로 여러 커밋 되돌리기
    • 먼저 commit 3에서 되돌리기를 한다.
    • commit 2에서 되돌리기를 한다.