본문 바로가기

Git

Git Hub fetch, pull

Git Hub 에서는 다른사람들과 함께 작업을 할 때에도 사용되기 때문에 다른사람이 commit 한 내용이 존재할경우에

push 를 시도하면 실패하게된다.

로컬 저장소의 commit 들이 원격 저장소의 commit이랑 일치해야만 push 되기 때문이다.

 

fetch 

 

fetch 는 원격저장소에 있는 commit들을 로컬 저장소로 가져온다. 로컬로 가져온 commit 들을 자신이 수정한 로컬 저장소의 작업과 겹치지 않게 merge 작업 후 원격 저장소에 push 해야한다.

 

 

pull 

 

pull 는 원격저장소에 있는 정보를 가져오면서 자동으로 merge 작업까지 수행한다.

이 작업에는 어떤 내용이 병합이 되었는지 알수가 없다. 

 

 

git push 순서 (fetch)

fetch > merge > push

 

git push 순서 (pull)

pull > push

 

 

 

git commit 이력이 있을경우에 push 시도할 경우 예제)

 

신규 commit 이력 생성 (h3, h4 추가)

 

 

다른 저장소에서 임의 내용 추가 후 push 시도

(background-color 추가)

기존에 올린 commit 이력이 있을경우 다른 저장소에서 push 시도 할경우 에러가 뜨는 모습을 볼수있다.

 

 

commit 이력 fetch, merge 후 push 시도

 

위와 같이 진행 할 경우 성공적으로 push 성공하는 모습을 볼 수 있다.

(pull을 사용 할 경우 fetch/merge를 진행하지 않아도 push 가능하다.)

 

 

 

 

'Git' 카테고리의 다른 글

[Eclipse] Git Hub clone 코드 사용하기  (0) 2023.05.11
[Eclipse] Git Hub 연동 및 푸쉬  (0) 2023.05.10
GitHub Repositories 연동 및 push  (0) 2023.04.19
Git 초기 셋팅 및 명령어  (0) 2023.04.06