210430 Fri

Sunny·2021년 5월 1일
0

Today I Learned

목록 보기
44/88

1. 첫 번째 학습 내용: git pull/ github merge

  • git pull시 branch를 pull 해오는 방법
  1. 내가 pull 해오고 싶은 branch로 이동
  2. git pull origin branch name
    branch name = 내가 pull 해오고 싶은 브랜치 네임

[ git 기본 ] git pull 시 특정 branch 를 pull 해오기 [개발이야기]

  • github에서 (서로 다른 브랜치간) merge하는 방법
    이안꺼를 clone해와서 내 브랜치에서 작업한 상태.
    내 브랜치를 이안꺼에 푸쉬함


1. Able to merge 확인 → Create pull request 버튼 클릭


2. 어느 브랜치에서 어느 브랜치로 merge할지 확인 → Create pull request 버튼 클릭


3. 커밋 올린거 잘 따라왔는지 확인 → Merge pull request 버튼 클릭


4. Confirm merge 버튼 클릭 → merge 완료!

문제점/고민한점 → 해결방안 (아직 못 찾음)

git으로 pull 해와서 커밋 작성 후 push 하는 과정에서 오류 생김

  1. 이안이 1번, 2번 커밋을 작성하여 push를 했습니다.
  2. 써니가 pull 을 사용해 당겨오고 3번, 4번, 5번 커밋을 작성했습니다.
  3. 이안이 풀리퀘스트를 사용해 당겨왔습니다.
  4. 이안이 6번 커밋을 작성하여 push를 하던 도중 “git failed to push some refs to”, “updates were rejected because the remote contains work that you do hint not have locally” 라는 오류가 발생했습니다.
  5. 약 1시간 가량 해결방법을 찾아봤지만 해결을 하지 못해 “git push -f” 를 사용해 강제로 커밋을 완료하였습니다

잘 이해가 가지 않는 부분은 iTerm에서 해결 방법? instruction으로 fetch를 하라는 식으로 나와 있었는데요. 이미 pull을 해왔고, pull이라는 것은 내부적으로 보면 fetch + merge이라고 이해했어요. 그런데 fetch를 또 하면 중복되는게 아닌지? 왜 fetch를 해야 하는건지? 잘 모르겠어요.. ㅠㅠ

“git push -f ” 를 사용하는 방법 말고 다른 해결방법이 있었을까요? 😢

브랜치 병합하기

git: updates were rejected because the remote contains work that you do not have locally

기타 학습 자료

[OS] 더 이상 어버버하지말자!! 스레드와 프로세스 thanks to 스티븐 👍

profile
iOS Developer

0개의 댓글