Git Pull: Inhalte herunterladen und mergen
Der Befehl Git Pull lädt die Inhalte eines Remote Repositorys herunter und führt dann automatisch einen Merge durch. Durch verschiedene Argumente können Sie den Command spezifizieren.
- Inklusive Wildcard-SSL-Zertifikat
- Inklusive Domain Lock
- Inklusive 2 GB E-Mail-Postfach
Was ist Git Pull?
Git erlaubt Ihnen und Ihren Teammitgliedern die gleichzeitige Arbeit an einem Projekt. Möglich ist dies durch unterschiedliche Repositories, an denen Entwicklerinnen und Entwickler autark arbeiten können, bevor dann nützliche und wichtige Änderungen wieder in das Gesamtprojekt integriert werden. Damit dieses Prinzip allerdings zu optimalen Ergebnissen führen kann, ist es wichtig, dass die Basis in jedem lokalen Repository identisch ist. Nur wenn der Ausgangspunkt übereinstimmt, können auch eventuelle Änderungen integriert werden. Ein wichtiges Tool für die Arbeit mit dem Versionskontrollsystem ist daher der Git-Command Git Pull.
Mit Git Pull laden Sie Inhalte aus einem Remote Repository herunter und aktualisieren im Anschluss Ihr lokales Repository. So stellen Sie sicher, dass Sie vom aktuellen Stand ausgehend arbeiten können. Nach der Arbeit an Ihrem lokalen Repository können Sie die Änderungen und Neuerungen dann über den Befehl Git Push in das Remote Repository hochladen. Die Arbeit mit Git Pull und Push ist gerade dann besonders wichtig, wenn mehrere Nutzerinnen und Nutzer gleichzeitig an einem Projekt arbeiten und zu jeder Zeit der neueste Stand benötigt wird. Git Pull fungiert dabei als eine Art Update.
Neben Git gibt es noch andere Versionsverwaltungsprogramme. Lesen Sie auch unseren Vergleich von Git und SVN.
Syntax und Funktionsweise von Git Pull
Die gewöhnliche Syntax von Git Pull finden Sie auch auf unserem praktischen Git Cheat Sheet mit PDF-Download. Sie enthält lediglich den eigentlichen Befehl und dann eine Information, welches Remote Repository übernommen werden soll. Das sieht so aus:
git pull <remote repository=""></remote>
Die Funktionsweise von Git Pull lässt sich am besten mit zwei anderen Git-Befehlen erklären, die hier im Prinzip hintereinander ausgeführt werden. Zuerst wird wie bei Git Fetch ein Remote Repository angegeben und dessen aktueller Stand inklusive aller Inhalte heruntergeladen. Dann wird ein Git Merge durchgeführt, bei dem die Remote-Kopie und die lokale Kopie zusammengeführt werden. Während Sie normalerweise die beiden Befehle „git fetch <remote repository>“ und „git merge origin/ <aktueller-Branch>“ hintereinander ausführen müssten, verbindet Git Pull diese und spart Ihnen dadurch einen Arbeitsschritt.
Varianten des Commands
Neben der oben beschriebenen Standard-Version von Git Pull gibt es ein paar Varianten des nützlichen Befehls. Diese stellen wir Ihnen hier vor.
Git Pull ohne Merge
Sie können den klassischen Git Pull so erweitern, dass zwar ebenfalls die Inhalte des Remote Repositorys heruntergeladen werden, Git allerdings keinen neuen Merge-Commit erstellt. Der Befehl sieht dann aus wie folgt:
git pull --no-commit <remote repository=""></remote>
Git Pull mit Rebase
Bei dieser Variante werden durch Git Pull zwar ebenfalls sämtliche Inhalte eines Remote Repositorys heruntergeladen, statt eines Merges wird die Integration allerdings mit Git Rebase vorgenommen. So lautet der Befehl ausgeschrieben:
git pull --rebase <remote repository=""></remote>
Git Pull mit Verbose
Mit diesem Zusatz wird der Git Pull zwar normal durchgeführt, Sie erhalten zu den neuen Dateien allerdings eine genaue Auflistung. So wissen Sie, mit welchen Inhalten Sie weiterarbeiten können.
git pull --verbose
Unterschiede zwischen Git Pull und Fetch
Gerade am Anfang können die beiden Befehle Git Pull und Git Fetch verwechselt werden. Immerhin ist die grundsätzliche Funktionsweise ähnlich, da beide Befehle Inhalte von einem Remote Repository herunterladen. Git Fetch verzichtet allerdings darauf, das lokale Repository zu verändern. Dieser Command stellt somit die benötigten Dateien zur Verfügung, behält den aktuellen Zustand allerdings bei. Git Pull passt das lokale Repository hingegen sofort an. Das spart zwar unter Umständen Zeit, kann aber auch zu Konflikten führen.
Beispiel für Git Pull
Im folgenden Beispiel zeigen wir Ihnen, wie Git Pull in der Praxis funktioniert. Weil der Befehl gleich zwei Schritte hintereinander ausführt, wird der Code kürzer und Sie benötigen insgesamt nur wenige Zeilen. In unserem Beispiel nutzen wir den Befehl Git Checkout, um zu unserem lokalen Repository zu wechseln. Im zweiten Schritt führen wir dann Git Pull aus. Der Befehl bewirkt, dass die Inhalte unseres Remote Repositorys heruntergeladen werden und Git direkt im Anschluss Git Merge durchführt. Unser lokales Repository ist damit sofort auf dem neuesten Stand. So sieht das in der Praxis aus:
git checkout <lokales-repository></lokales-repository>
git pull <remote-repository></remote-repository>
Rebase statt Merge
Um eine möglichst lineare History zu gewährleisten, bevorzugen viele Entwicklerinnen und Entwickler Git Rebase und verzichten auf Git Merge. In diesem Fall werden die eigenen Änderungen vor die Änderungen anderer Teammitglieder gesetzt. Da Git Pull eigentlich auch einen Merge durchführt, muss der Befehl um den oben erwähnten Zusatz „--rebase“ erweitert werden. In der Praxis sieht das aus wie folgt:
git checkout master
git pull --rebase origin
Bringen Sie Ihr Projekt online und behalten Sie die volle Kontrolle! Mit Deploy Now von IONOS deployen Sie Ihre Websites und Apps direkt via GitHub. Dabei ist der erste Probemonat kostenlos, und im Anschluss wählen Sie aus drei Tarifen den passenden für Ihre Ansprüche.