프로젝트/장고 웹페이지 구축

[Django] git pull/push 할 때 참고할 페이지

eunjuu 2023. 9. 29. 13:41
728x90

🛝 git 명령어 모음집


참고 링크 📎 : 우리 팀장님 블로그 

git add .
git commit -m "230101 commit"
git pull origin master
git push origin enjprk41

 
그럼 이제 팀원이 수정한 코드가 개발 리더의 깃헙 코드 저장소의 입구 문을 두드리고 있음. 아직 할 일이 남아 있다. github 사이트로 들어가서 개발 리더의 깃헙 코드 저장소의 <>Code 메뉴에 접속한다.
**freshman had recent pushes less than a minute ago**라는 문장이 보일거고, 오른쪽에 Compare & pull request 버튼이 보일 것이다. 그걸 과감하게 누르자!
그럼 Open a pull request라는 메일처럼 보낼 수 있는 게 뜬다! 그럼 본문에다가 자신이 어떤 부분을 수정했는지 쓰고 개발 리더에게 확인해달라고 편지처럼 쓰자. 그리고 Create pull request 버튼을 누르면 최종적으로 개발 리더에게 전송이 된 거!!!


매번 오류가 생기는 나의 페이지 ㅎㅅㅎ

힌트: You have divergent branches and need to specify how to reconcile them.
힌트: You can do so by running one of the following commands sometime before
힌트: your next pull:
힌트: 
힌트:   git config pull.rebase false  # merge
힌트:   git config pull.rebase true   # rebase
힌트:   git config pull.ff only       # fast-forward only
힌트: 
힌트: You can replace "git config" with "git config --global" to set a default
힌트: preference for all repositories. You can also pass --rebase, --no-rebase,
힌트: or --ff-only on the command line to override the configured default per
힌트: invocation.
fatal: Need to specify how to reconcile divergent branches.

 

🚧 에러 이유?

참고 사이트 : https://thalals.tistory.com/320
 
git pull 정책 명시해주지 않아서 나오는 오류라고 한다.
git 2.27부터 새로 추가된 기능이고, 
레포지토리에서 pull을 받을 때, pull 전략을 명시해 주어야 한다 (rebase, merge, fast-forward : ff)
 
여기서 git pull을 하는 방식 중에 세 가지가 소개된다.

  • git config pull.rebase false
  • git config pull.rebase true
  • git config pull.ff only

 

🚦 간단하게 이해해보기

참고 사이트 : https://dodo1054.tistory.com/239
 

//원격 저장소 -> 로컬 저장소 파일 가져와 자동으로 병합
git pull
// 원격 저장소 -> 로컬 저장소 수정된 내용을 가져오지만 로컬 데이터와 병합 X
git fetch

 
fatal: Need to specify how to reconcile divergent branches 

위와 같은 경고는 git pull 할 경우 fetch 후 merge 를 하지 않고 fetch 만 함
즉 데이터 병합을 하지 않음

 

hint:   git config pull.rebase false  # merge          -- rebase 후  git pull
hint:   git config pull.rebase true   # rebase         -- rebase 없이 git pull
hint:   git config pull.ff only       # fast-forward only -- fast_forward 때만 git pull

// rebase : 새 브랜치가 시작되 분기점 commit을 기준 브랜치의 가장 최근 commit으로 변경

 
+) 추가로 설명이 잘 되어있는 사이트 : https://devum.tistory.com/77

728x90