git fetch¶
Mit diesem Basis-Download-Kommando werden einfach die zum Lokal-Branch abweichenden (neuen) Commits heruntergeladen und mit den Remote-Tracking-Branches referenziert.
Git - Fetch (gitbu.ch)¶
Hinweis: Darstellung aus gitbu.ch (siehe auch Literatur).
Das Basiskommando git fetch arbeitet mit den Spezifikationen,
die in der Git-Config mittels der Reference Specifications (RefSpec)
hinterlegt sind.
Also schauen uns wir uns wieder .git/config an:
$ cat .git/config
...
[remote "origin"]
url = git://github.com/esc/git-cheatsheet-de.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
Die RefSpec werden automatisch mittels git clone
oder git remote add aktualisiert.
Die komplette Syntax wäre git fetch origin master -
hole (fetch) aus origin (siehe RefSpec) den Branch master
Um die Neuerungen mit lokalen Zweigen zu verschmelzen benötigen wir noch ein git merge.
Wenn man andere Branches, als den (meist) per RefSpec verdrahteten master fetchen will,
dann führt man ein git checkout durch:
$ git checkout -b next origin/next # komplette Syntax
$ git checkout next # ausreichende Info, falls lokal kein Branch next
Immer auch hierbei beachten: alle Arbeiten finden lokal statt, auch wenn wir hier jetzt durch Checkouts mit Remote-Tracking-Branches arbeiten.
Nur durch git push werden Änderungen (online) veröffentlicht!