git pull이란? git pull은 Remote Repository의 커밋을 가져온 다음(git fetch) 현재의 Working Directory에 Merge하는 동작을 하는 명령어이다. git pull = git fetch + get merge 예를 들어 다음과 같은 상태가 있다고 해보자. GitHub의 master 브랜치에는 fourth commit까지 있다. 하지만 Local master 브랜치는 second commit까지 밖에 없다. Remote Branch 를 트래킹하는 origin/master 브랜치도 fetch가 안되어 second commit을 바ㅏㄹ보고 있다. 이 상태에서 git fetch를 하면 remote 브랜치를 트래킹하는 origin/master가 다음과 같이 변경된다. [..
git fetch
GitHub에 저장된 브랜치 확인하기 GiHub에 저장된 브랜치는 git branch -r 명령어를 통해 확인 가능하다. 예를 들어 GitHub url에 대한 alias를 origin-ssh로 지정한 후, 브랜치를 main, master 두개를 만들었다면 다음과 같이 출력된다. $ git branch -r origin-ssh/main origin-ssh/master GitHub branch 가져오기 GitHub에 저장된 브랜치는 git switch [branch name]을 통해 가져올 수 있다. git switch [branch name] 을 하면 git은 먼저 로컬에 브랜치가 있으면 해당 브랜치로 스위치하고, 없으면 remote(Github)에서 해당 브랜치를 가져온다. $ git branch -d ..
git fetch란? Git은 Remote Branch를 계속 Tracking 하지 않는다. 사용자가 요청할 때만 트래킹을 한다. 사용자가 이러한 트래킹을 요청하는 명령어가 바로 git fetch 이다. 어떤 때 git fetch를 써야 할까? master branch에 first commit과 second commit이 있는 상태에서 해당 브랜치를 git clone 했다고 해보자. 그러면 [그림1]과 같이 Remote Repository인 GitHub의 master 브랜치는 second commit을 포인팅 할 것이고, Local의 master 브랜치 또한 second commit을 포인팅 할 것이다. 그리고 해당 브랜치가 트래킹하는 origin/master은 마찬가지로 second commit을 트래..