git fetch와 merge, pull의 관계를 알기 쉽게 설명한다【Git 커맨드 해설②】

Git 명령은 많이 있습니다. git add와 commit, push 등은 자주 사용하는 명령이기 때문에 알지만,

fetch, merge, pull이 되면 「무슨 의미를 모르겠다...」라고 하는 분은 많은 것이 아닐까요.
git fetch
git merge 
git pull

오늘은 3개의 Git 명령에 대해 가능한 한 알기 쉽게 해설해 갑니다.

원래 git add와 commit, push를 모른다! 라는 분은, 이쪽의 기사를 읽어 주세요.
↓↓↓
git add와 commit, push의 관계를 알기 쉽게 설명한다【Git 커맨드 해설①】

git pull은 fetch와 merge를 모두 결합한 명령입니다.



위의 기사에서 로컬 리포지토리의 내용을 원격 리포지토리에 전송 (업로드)하는 것을 "push"라고 부르셨습니까?

반대로 원격 리포지토리에서 로컬 리포지토리를 업데이트하는 것을 "pull"이라고 합니다.


이미지 인용 : htps : //바 ckぉg. 코 m / 쟈 / 기 t 토리 토리 / l t t / 02 /

예를 들어, A군과 B군이 팀 개발하고 있다고 합니다. A군이 갱신한 파일을 B군에게도 반영시키고 싶습니다.

이것을 실현하는 흐름은 다음과 같습니다.

1.A군이 로컬 리포지토리의 내용을 리모트 리포지토리에 송신(업로드)한다(push)
2.B 군이 원격 리포지토리에서 로컬 리포지토리를 업데이트한다 (pull)

이것이 pull의 역할입니다. 제목에는 "git pull은 fetch와 merge를 모두 결합한 명령"이라고 썼습니다. 다음과 같은 관계식이 성립합니다.
pull = fetch + merge

여기서 fetch와 merge의 의미를 모른다! 되었다고 생각하기 때문에, 각각 해설해 갑니다.

git fetch로 원격에서 로컬로 가져와 git merge로 로컬 업데이트



리모트 리포지토리로부터 최신 정보를 로컬 리포지토리에 가져오는 것을 「fetch」라고 부릅니다. 또한 fetch를 사용하여 로컬로 가져온 최신 정보를 업데이트하는 것을 "merge"라고합니다. merge에는 "통합, 융합"이라는 의미가 있습니다.

아까 정도의 관계식을 알기 쉽게 하면 이런 느낌입니다.
pull(リモートから持ってきて更新) = fetch(リモートから持ってくる) + merge(ローカルを更新)

"pull과 fetch 무엇이 다른가?"라고 생각했을지도 모릅니다.

pull과 fetch의 차이는 실제로 파일을 업데이트할지 여부의 차이입니다. merge를 하지 않으면 로컬이 갱신되지 않는 것이군요.

※개인개발의 경우라도, 브런치를 나누어 작업하는 것이 많다고 생각합니다. 브랜치에서 작업하고 있던 내용을 통합시키고 싶을 때 merge 명령을 사용하게 됩니다. 원격 리포지토리를 공유하는 팀 개발만으로 사용하는 명령이 아니라는 것입니다.

요약


1.リモートリポジトリから最新情報をローカルリポジトリに持ってくることを**「fetch」**と呼ぶ
2.fetchを使ってローカルに持ってきた最新情報を更新することを**「merge」**と呼ぶ
3.**「pull」**はmergeとfetchをまとめて行うコマンド<br><br>

이제 git fetch와 merge, pull의 관계에 대해 이해가 깊어졌을까 생각합니다.
다음은 git clone, log, branch, status 당 명령에 대해 설명합니다.

이 기사의 설명을 이해하기 쉽다! 여기 틀렸어! 다음 이런 기사를 쓰고 싶다! 등 있으면 코멘트, DM 잘 부탁드립니다. LGTM도 꼭.

Twitter도 하고 있으므로, 팔로우해 주시면 기쁩니다.
탁구, 심리학, 철학, 웹 서비스, 좋아하는 음악, 카메라, 등산, 달리기, 읽은 책 등 뭐든지 중얼거리고 있습니다.

[ htps : // 라고 해서 r. 코 m / 아츠시 101011 ]

좋은 웹페이지 즐겨찾기