git/branch간 충돌이 일어날 때 해결 방법

LikeChoonsik's·2022년 1월 26일
0

Git

목록 보기
1/4
post-thumbnail

merge시 충돌날 경우

ex) master 브랜치 test 파일에 name: kim이 저장되어 있고
newbranch 브랜치 test 파일에는 name: jo가 저장되어 있으면

merge시 (vsc기준) >>>>>>>이런 표시와 함께 둘중 뭘 쓸꺼냐고 묻는 문구가 생성됩니다
이후 선택사항으로 적용할 수 있으나 수정사항이 많고 답이 없을 경우
git merge --abort로 merge 중단시키는 것도 방법입니다
충돌 부분 해결후 git add . ,git commit하시면 자동으로 commit메세지가 입력됩니다

rebase시 충돌날 경우

merge 충돌과 비슷하나 rebase 특성상 다른 부분에 대해 하나씩 그 과정에 대해 다 물어봅니다
git rebase --abort 로 중단하거나 git rebase --countinue로 계속 진행가능합니다
충돌 부분 해결후 git add . ,git rebase --countinue하시면 자동으로 문제가 발생된 부분을 계속 보여줍니다
해결 후 자동으로 rebase 됩니다

로컬작업물과 github자체 작업물이 달라 push가 안될 경우

git pull --no-rebase

merge 방식, 작업물의 다른 부분을 가상 브랜치를 만들어 보여준 후 마지막에 하나로 합쳐줍니다

git pull --rebase

rebase 방식, 작업물의 다른 부분을 시간 순서에 따라 나열 후 합쳐줍니다
협업시 보통 사용하는 방식이라 합니다

git push --force

강제로 push하는 방법
로컬의 내용 전으로 reset해준 후 push 하는 행동입니다
즉, 로컬과 다른 내용들 커밋까지도 지워버리기에 협업시에는 사전 이야기가 없을 경우 사용을 추천하지 않습니다

profile
춘식이는 너무 귀엽습니다.

0개의 댓글