Evie 추가 후 커밋을 했을 때
위 경우 원격에 브랜치는 하나 뒤쳐져있음
-> 로컬의 변화를 원격으로 업데이트 해주어야 함
git push
위 코드는 이미 git push -u origin main으로 대상 원격 브랜치가 지정
되었기 때문에 가능
동료가 Push 한 작업 받아오기
즉 1,2의 경우 자신은 커밋을 하였으나 push를 하지 않은 상태고, 동료는 수정 후 push를 먼저 한 상태
-> 이 경우 pull 할 것도 있고 push할 것도 있다
이 경우 push를 할려하면 에러 발생
-> 최신 내역이 안 맞추어져 있기에
원격 저장소에는 dongho 커밋 위에 edit leopards coach가 있는 반면
로컬 에는 dongho 커밋 위에 edit lepoards manager가 있다
-> 이러한 경우 해결방법 2가지
협업상에서 하지말라던 rebase와 pull rebase는 다름
git pull --no-rebase
시
로컬의 main 브랜치와, 원격의 main 브랜치를 서로 다르게 봄
Edit Leopards manager 시점으로 hard reset을 한 이후
git pull --rebase
이후 git push 진행 시
파일을 열어보면 coach와 manager가 둘다 바뀌어 있는 것을 확인 가능
--no-rebase
시
Maruchi로 선택 후
--rebase
시
이후 git add., git rebase --continue
이 경우엔 하나만 추가되어있음
--rebase 시 발생하는 충돌 상황에서 Maruchi로 수정 후 커밋 시
로컬(main)의 내역들이 원격(origin/main) 보다 뒤쳐져 있는 경우에는 push를 하지못함
만약 원격에 있는 내용들이 잘못되어 로컬에 있는 것들로 강제로 맞춰 줘야 할 상황이 있는 경우
-> 원격에 있는 커밋 중 로컬 과 다른 커밋
들은 강제로 사라지게 될 것!
git push --force
위 코드 실행 시
원격 저장소에 Add Arachi가 사라짐