티스토리 뷰
-fetch의 인자들
push에서 인자를 변경한 것 처럼, fetch도 인자를 변경할 수 있습니다.
하지만 push는 업로드, fetch는 다운로드니까 조금 다르긴 합니다.
$ git fetch origin foo |
이러면 git은 원격 저장소의 foo 브랜치로 가서, 현재 로컬 저장소에 없는 커밋들을 가져와 로컬의
o/foo 브랜치 아래에 추가합니다.
"그렇다면, 이전 강의처럼 source와 destination를 모두 직접 지정해주면 어떻게될까요?
$ git fetch origin source:destination |
(*이 명령어 또한 목적지가 없으면 자동으로 생성합니다)
이 명령어로 말이죠"
여러분이 커밋을 직접 로컬 브랜치로 fetch할 열의가 있다면, 네 콜론 참조스펙으로 지정해서 할 수 있습니다.
하지만 체크아웃된 브랜치(작업중인)에 fetch할 수 는 없고 체크아웃되지 않은 브랜치만 가능합니다.
주의 할점이 하나 있는데
-- <source>는 이제 받아올 커밋이 있는 원격에 있는 place를 넣어줘야하고 <destination>은 그 커밋들을 받아올 local의 place를 인자로 넣어줘야 합니다.
git push와 정반대로 하는거죠, 데이터를 반대의 방향으로 옮기는 작업이니 이게 더 납득이 갑니다.
언급한 것 처럼, 실제로 이것을 하는 개발자들은 많지 않습니다. 이것을 소개하는것은 fetch와 push가 방향이 반대일뿐 컨셉이 비슷하다는것을 표현하기 위해서입니다.
-문제
-해결
$ git fetch origin master^:foo - master위 커밋(C2, C3)을 다운 후, foo로 지정. |
$ git fetch origin foo:master - foo와 윗 커밋을 다운후 master로 지정. |
$ git checkout foo - foo와 master을 merge해야 하기때문에 foo로 checkout. |
$ git merge master - master와 foo를 merge. |
'Git배우기' 카테고리의 다른 글
LearnGitBranching_Remote]R2 - 8(F). Git pull의 인자들. (0) | 2019.08.09 |
---|---|
LearnGitBranching_Remote]R2 - 7. <Source>의 이상함. (0) | 2019.08.09 |
LearnGitBranching_Remote]R2 - 5. git push의 인자들 추가편. (0) | 2019.08.09 |
LearnGitBranching_Remote]R2 - 4. git push의 인자들. (0) | 2019.08.09 |
LearnGitBranching_Remote]R2 - 3. 원격 저장소 추적하기 (0) | 2019.08.09 |
댓글