Direkt zum Inhalt

Git Pull: Dein lokales Repository auf dem neuesten Stand halten

Der Befehl git pull holt Aktualisierungen aus einem entfernten Repository und führt sie in deinem aktuellen Zweig zusammen. Lies weiter, um zu erfahren, wie du unnötige Konflikte beim Zusammenführen vermeiden kannst.
Aktualisierte 10. März 2025  · 8 Min. Lesezeit

Wenn du in einem Team oder sogar alleine an einem sich entwickelnden Projekt arbeitest, weißt du, wie wichtig es für eine reibungslose Zusammenarbeit ist, dein lokales Repository auf dem neuesten Stand zu halten. Und hier kommt git pull ins Spiel, denn es integriert Änderungen aus der Ferne in deinen lokalen Zweig. Im Wesentlichen holt git pull Änderungen aus einem entfernten Repository ab und integriert sie in deinen lokalen Zweig. Es ist ein wichtiger Befehl, der sicherstellt, dass du immer mit dem aktuellsten Code arbeitest, vor allem in schnelllebigen, gemeinschaftlichen Projekten.

Das Tolle an git pull ist, dass es zwei Schritte miteinander kombiniert: Zuerst führt es eine git fetch aus, um die neuesten Änderungen herunterzuladen, und dann führt es automatisch eine git merge aus, um diese Updates in deinen Zweig zu integrieren. Wenn du eine saubere Historie ohne zusätzliche Merge Commits bevorzugst, kannst du stattdessen git pull --rebase verwenden.

Wenn du dir diese Konzepte aneignen willst, solltest du dir unseren brandneuen Lernpfad GitHub Fundamentals ansehen. Wenn du den Kurs durcharbeitest, wirst du etwas über Versionsgeschichte und die Arbeit mit Zweigen lernen, aber am Ende wirst du auch über fortgeschrittene Zusammenführungsstrategien und die Verwaltung von Repositories Bescheid wissen. 

Was ist Git Pull?

Lass uns das mal aufschlüsseln. Wenn du git pull ausführst, aktualisierst du deinen lokalen Zweig mit den neuesten Commits aus dem entfernten Repository. So funktioniert es:

  1. Updates abrufen: Git startet, indem es git fetch ausführt, um alle neuen Commits von der Gegenstelle abzurufen.

  2. Änderungen zusammenführen: Als Nächstes führt es automatisch eine git merge aus, um die geholten Commits in deinen aktuellen Branch zu integrieren.

  git pull fetch and merge Prozess

Hier ist eine visuelle Darstellung des Git Pull-Prozesses. Das Diagramm zeigt, wie Commits aus dem entfernten Repository(A → B → C) geholt und in den lokalen Zweig(A → B → D) zusammengeführt werden. Die gestrichelte Linie stellt den Zusammenführungsschritt dar, bei dem die Übergabe C in das lokale Repository integriert wird. Hier siehst du, wie git pull deinen lokalen Zweig mit den neuesten Änderungen aus der Ferne auf dem neuesten Stand hält.

Git Pull und verwandte Befehle

Lass uns in einige wichtige Optionen von git pull eintauchen und sehen, wie sie deinen Arbeitsablauf vereinfachen können. Egal, ob du deine Commit-Historie aufräumen willst oder mehr Einblick in die Vorgänge während eines Pulls brauchst, diese Befehle haben dich abgedeckt. Hier ist eine praktische Referenz:

Befehl Beschreibung
git pull Holt entfernte Änderungen und führt sie im aktuellen Zweig zusammen.
git pull origin <branch> Zieht Änderungen aus einem bestimmten entfernten Zweig.
git pull --rebase Verwendet Rebase anstelle von Merge, um eine saubere, lineare Commit-Historie zu erstellen.
git pull --no-commit

Holt die Änderungen aus der Ferne und führt sie zusammen, erstellt aber keine automatische Übergabe, damit du das zusammengeführte Ergebnis vor der Übergabe prüfen und ändern kannst.

git pull --verbose Liefert detaillierte Ausgaben während des Pull-Prozesses, damit du genau sehen kannst, welche Änderungen geholt werden.

Diese Optionen bieten Flexibilität, damit du deinen Aktualisierungsprozess an die Bedürfnisse deines Projekts anpassen kannst. Wenn du zum Beispiel eine aufgeräumte Commit-Historie bevorzugst, ist git pull --rebase vielleicht deine erste Wahl. Oder wenn du die Änderungen vor dem Zusammenführen noch einmal überprüfen möchtest, bietet dir git pull --no-commit diese zusätzliche Kontrollebene.

Häufige Git Pull-Probleme vermeiden

Seien wir ehrlich: git pull ist ein Lebensretter, aber nicht ohne seine Macken. Hier erfährst du, wie du die häufigsten Fallstricke umgehst und deinen Arbeitsablauf reibungslos gestalten kannst:  

Konflikte zusammenführen

Zusammenführungskonflikte entstehen, wenn sich deine lokalen Änderungen mit denen des entfernten Repositorys überschneiden. Wenn du und ein Teamkollege zum Beispiel dieselbe Codezeile bearbeiten, weiß Git nicht, welche Version es behalten soll. Wenn das passiert, hält Git die Zusammenführung an und fordert dich auf, den Konflikt manuell zu lösen.  

Hier ist, wie du es reparierst: 

  1. Öffne die konfliktbehaftete(n) Datei(en) und suche nach Konfliktmarkierungen (<<<<<<<, =======, >>>>>>>).  

  2. Bearbeite die Datei, um die gewünschten Änderungen beizubehalten. 

  3. Speichere die Datei, stelle sie bereit (git add ) und schließe die Zusammenführung ab (git commit).

Pulling mit unbestätigten Änderungen

Wenn du unübertragene Änderungen in deinem Arbeitsverzeichnis hast, git pull fehlschlagen, weil es eine saubere Weste braucht, um die entfernten Änderungen zusammenzuführen.

Hier ist die Lösung:

1. Verstecke deine Änderungen:

Da git pull ein sauberes Arbeitsverzeichnis benötigt, musst du deine nicht bestätigten Änderungen mit dem Befehl stash vorübergehend speichern. So bleiben deine Änderungen sicher, während du deinen Zweig aktualisierst.

git stash

2. Ziehe die letzten Änderungen:

Jetzt, wo dein Arbeitsverzeichnis sauber ist, kannst du die letzten Änderungen aus dem entfernten Repository holen und zusammenführen.

git pull

3. Setze deine versteckten Änderungen wieder ein:

Sobald die Aktualisierung abgeschlossen ist, kannst du deine gespeicherten Änderungen mit git stash pop wieder in dein Arbeitsverzeichnis zurückspielen. So bekommst du alles zurück, was du vor dem Verstecken hattest.

git stash pop

Wenn du diese Schritte befolgst, weißt du, dass deine lokalen Änderungen sicher gespeichert sind, während du deinen Zweig aktualisierst. 

Am falschen Ast ziehen

Wenn du git pull aufrufst, ohne einen Branch anzugeben, zieht Git aus dem Upstream-Branch, den dein lokaler Branch verfolgt. Wenn der Upstream nicht richtig eingestellt ist, könntest du Änderungen aus einem unerwarteten Zweig ziehen, was zu Verwirrung oder Fehlern führen kann.  

Hier erfährst du, wie du es vermeiden kannst: 

1. Überprüfe den Upstream-Zweig:

git branch -vv

2. Falls nötig, stelle den richtigen Upstream ein:

git branch --set-upstream-to=origin/<branch>

Überprüfe immer, von welchem Zweig du abrufst, besonders wenn du mit mehreren Zweigen arbeitest.

Best Practices für die Verwendung von Git Pull

Aufbauend auf dem, was wir zuvor über das Vermeiden häufiger Probleme besprochen haben, sind hier einige Best Practices, die dir helfen, das Beste aus git pull in deinem täglichen Arbeitsablauf zu nutzen:

  • Ziehe häufig: Aktualisiere deinen Zweig regelmäßig, um zu verhindern, dass sich große Konflikte anhäufen. Kleine, inkrementelle Änderungen sind viel einfacher zu handhaben als massive Zusammenführungen zu einem späteren Zeitpunkt.

  • Prüfe vor dem Zusammenführen: Führe zuerst git fetch aus, um zu sehen, welche Änderungen auf dich warten. So kannst du eingehende Commits überprüfen, ohne sie sofort zusammenzuführen, damit du Zeit hast, dich auf eventuelle Anpassungen vorzubereiten.

  • Führe eine lineare Geschichte: Wenn du eine saubere Commit-Historie bevorzugst, verwende git pull --rebase. Mit diesem Befehl werden deine lokalen Änderungen auf die neuesten Remote-Commits übertragen, sodass dein Projektverlauf aufgeräumt bleibt.

  • Rückblick Fusionen: Um noch vorsichtiger zu sein, kannst du die Ergebnisse der Zusammenführung mit git pull—- no-commit überprüfen, bevor du sie mit einem Commit abschließt. So kannst du Unstimmigkeiten frühzeitig erkennen.

  • Überprüfe den Lernpfad für Zweige: Führe immer git remote show origin aus, um sicherzustellen, dass dein lokaler Lernpfad den richtigen entfernten Lernpfad verfolgt. Diese einfache Prüfung verhindert, dass Updates in den falschen Zweig gezogen werden.

Warum manche Entwickler Git Pull vermeiden

git pull ist zwar praktisch, aber manche Entwickler ziehen es vor, den Prozess in zwei Schritte aufzuteilen, um mehr Kontrolle zu haben:  

1. Zuerst holen

git fetch

Damit werden entfernte Änderungen abgerufen, ohne sie zusammenzuführen.  

2. Manuell integrieren

Verwende git merge, um Änderungen zu kombinieren:  

git merge origin/<branch>

Oder verwende git rebase für einen sauberen Verlauf:  

git rebase origin/<branch>

Ein Beispiel für Git Pull in Aktion

Gehen wir ein paar praktische Beispiele für die Verwendung von git pull durch, damit du genau sehen kannst, wie diese Befehle in realen Situationen funktionieren.

Grundlegende Verwendung von Git Pull

Der Befehl git pull ist der einfachste Weg, um deinen lokalen Zweig mit den neuesten Änderungen aus dem Hauptzweig des entfernten Repositorys zu aktualisieren. Es führt automatisch eine git fetch gefolgt von einer git merge durch. Mit diesem Befehl kannst du dein lokales Repository ohne zusätzliche Schritte mit den neuesten Updates aus dem Remote-Repository synchronisieren. Wenn du git pull aufrufst, holst du dir die Updates vom Remote-Zweig (in der Regel mit dem Namen origin) und fügst sie in deinen aktuellen Zweig ein, damit dein lokaler Code auf dem neuesten Stand bleibt.

git pull Beispiel

Mit git pull --rebase

Wenn du eine saubere, lineare Historie ohne unnötige Merge-Commits bevorzugst, ist git pull --rebase der richtige Weg für dich. Dieser Befehl holt die Änderungen aus der Ferne und wendet dann deine lokalen Commits darauf an, um einen strukturierten Commit-Verlauf zu erhalten. Es ist vorteilhaft bei Gemeinschaftsprojekten, bei denen ein ordentliches Commit-Log wichtig ist. Die Ausführung von git pull --rebase stellt sicher, dass deine lokalen Commits über die geholten Änderungen wiedergegeben werden, wodurch überflüssige Merge-Commits vermieden werden und deine Repository-Historie übersichtlicher bleibt.

git pull --rebase Beispiel

git pull --no-commit verwenden

Wenn du Änderungen aus der Ferne holen und zusammenführen willst, sie aber lieber vor dem Commit überprüfen möchtest, ist git pull--no-commit die perfekte Option. Mit diesem Befehl kannst du die Ergebnisse der Zusammenführung manuell überprüfen und eventuelle Konflikte lösen, bevor du die Übertragung abschließt. Es stellt sicher, dass du die vollständige Kontrolle über den Integrationsprozess hast, und ist daher ideal für vorsichtige Aktualisierungen, bei denen du die Änderungen vor der Übergabe überprüfen musst.

git pull no commit Beispiel

Ziehen von einem bestimmten entfernten Zweig

Wenn du an mehreren Zweigen arbeitest, kann es sein, dass du deinen lokalen Zweig mit Änderungen aus einem bestimmten entfernten Zweig aktualisieren musst, anstatt aus dem standardmäßigen Hauptzweig. Mit dem Zweig git pull origin feature kannst du die neuesten Commits aus einem bestimmten Zweig holen und zusammenführen, um sicherzustellen, dass deine lokale Arbeit mit den neuesten Remote-Änderungen aktualisiert wird. Das ist besonders nützlich, wenn du an der Entwicklung von Funktionen oder Fehlerkorrekturen über verschiedene Zweige hinweg zusammenarbeitest.

Git Pull vs. Git Fetch

Wenn du mit Git arbeitest, wirst du oft auf git pull und git fetch stoßen. Auch wenn sie ähnlich aussehen, dienen sie unterschiedlichen Zwecken. Wir wollen die Unterschiede aufschlüsseln, damit du entscheiden kannst, wann du sie einsetzen solltest.

Den Unterschied verstehen

  • git fetch holt Änderungen aus einem entfernten Repository, integriert sie aber nicht in deinen Arbeitszweig. Es aktualisiert einfach deine lokale Kopie der entfernten Zweige.

  • git pull macht dasselbe wie git fetch, fügt aber die geholten Änderungen sofort in deinen aktuellen Zweig ein.

Tabelle zum Vergleich

Feature Holen mit dem Git Git-Pull
Was sie tut Lädt neue Änderungen aus der Ferne herunter, führt sie aber nicht zusammen Lädt Änderungen herunter und fügt sie sofort in den aktuellen Zweig ein
Arbeitsverzeichnis ändern? Keine Aktualisierungen bei der Fernverfolgung von Zweigen Ja - Ändert den Arbeitszweig
Am besten für Prüfen auf entfernte Änderungen vor dem Zusammenführen Schnelles Aktualisieren des lokalen Zweigs mit den neuesten Änderungen
Kannst du es jederzeit benutzen? Ja, da es die Arbeit vor Ort nicht beeinträchtigt Nein, da dies zu Konflikten bei der Zusammenführung führen kann.
Häufiger Anwendungsfall Prüfen von Remote-Änderungen vor der Entscheidung zum Zusammenführen Lokale Zweigstellen automatisch auf dem Laufenden halten
Befehlssyntax git fetch origin git pull origin main

Wann sollte man sie einsetzen?

Nutze git fetch, um Änderungen zu überprüfen, bevor du deinen Zweig aktualisierst, um später manuell zusammenzuführen oder zu rebasen, oder um zu vermeiden, dass du instabile Änderungen ziehst, während du an einem Feature-Zweig arbeitest. Benutze git pull, wenn du die neuesten Updates in einem gemeinsamen Zweig wie central oder develop benötigst, wenn du sicher bist, dass du Änderungen aus der Ferne ohne Konflikte zusammenführen kannst, oder wenn du mit dem Repository deines Teams synchron bleiben willst. Viele Entwickler, die mehr Kontrolle über die Integrationen haben möchten, verwenden zuerst git fetch, gefolgt von git merge oder rebase manuell. Wenn du dich für fortgeschrittene Git-Workflows interessierst, kann das Erforschen strukturierter Ansätze deine Versionskontrollstrategie verbessern.

Fazit

Inzwischen solltest du ein solides Verständnis von git pullhaben - wie es funktioniert, wann du es einsetzen solltest und wie du die häufigsten Fallstricke vermeiden kannst. Wir haben gesehen, dass git pull git fetch und git merge kombiniert und damit eine schnelle Möglichkeit bietet, dein lokales Repository zu aktualisieren. Wenn du eine saubere Commit-Historie bevorzugst, ist git pull --rebase eine hervorragende Alternative.

Wir haben auch wichtige Optionen wie das Ziehen von bestimmten Zweigen, das Vermeiden von sofortigen Commits und den effektiven Umgang mit Merge-Konflikten erkundet. Außerdem haben wir besprochen, warum manche Entwickler git fetch gefolgt von git merge wählen, um mehr Kontrolle über eingehende Änderungen zu haben.

Damit dein Git-Workflow reibungslos funktioniert, musst du verstehen, wie Änderungen zwischen lokalen und entfernten Repositories übertragen werden. Egal, ob du an einem Teamprojekt mitarbeitest oder deine Repositories verwaltest - wenn du weißt, wann du pullen, fetch, mergen oder rebasen musst, erspart dir das eine Menge Kopfschmerzen. Bei Git gibt es viel zu lernen, aber wir von DataCamp helfen dir gerne dabei. Ich empfehle dir unseren Foundations of Git Kurs und den Introduction to GitHub Concepts Kurs als zwei gute Optionen.

Lerne heute die Git-Grundlagen

Für Anfänger: Master-Versionskontrolle mit Git.
Kostenloses Lernen beginnen

Oluseye Jeremiah's photo
Author
Oluseye Jeremiah
LinkedIn

Technischer Redakteur, der sich auf KI, ML und Datenwissenschaft spezialisiert hat und komplexe Ideen verständlich und nachvollziehbar macht.

git pull FAQs

Was macht git pull?

git pull aktualisiert dein lokales Repository, indem es Änderungen aus einem entfernten Repository abruft und sie in deinen aktuellen Zweig einfügt. Er kombiniert git fetch und git merge in einem Befehl.

Was ist der Unterschied zwischen git pull und git fetch?

git fetch lädt Änderungen aus dem entfernten Repository herunter, führt sie aber nicht in deinem lokalen Zweig zusammen, während git pull die Änderungen automatisch holt und zusammenführt.

Was sollte ich tun, wenn git pull zu einem Merge-Konflikt führt?

Wenn git pull einen Zusammenführungskonflikt verursacht, hält Git die Zusammenführung an. Du musst die widersprüchlichen Dateien manuell auflösen, git add verwenden, um die aufgelösten Änderungen bereitzustellen, und git commit ausführen, um die Zusammenführung abzuschließen.

Wie kann ich Änderungen ziehen, ohne sie zusammenzuführen?

Verwende git pull --rebase statt git pull, um eingehende Änderungen auf deine lokalen Commits anzuwenden, um Merge-Commits zu vermeiden und den Verlauf linear zu halten.

Wie kann ich Änderungen aus einem bestimmten Zweig ziehen?

Führe git pull origin aus, um Änderungen aus einem bestimmten Zweig des entfernten Repositorys in deinen aktuellen lokalen Zweig zu holen und zusammenzuführen.

Themen

Git lernen mit DataCamp

Zertifizierung verfügbar

Kurs

Einführung in Git

2 hr
16K
Entdecke die Grundlagen von Git für die Versionskontrolle in deinen Software- und Datenprojekten.
Siehe DetailsRight Arrow
Kurs starten
Zertifizierung verfügbar

Kurs

Grundlagen von Git

4 hr
46K
Mache dich mit Git für die Versionskontrolle vertraut. Erfahre, wie du Dateien verfolgen, vergleichen, ändern und rückgängig machen kannst und wie du mit Kollegen mit Git zusammenarbeitest.
Mehr anzeigenRight Arrow
Verwandt

Der Blog

Lehrer/innen und Schüler/innen erhalten das Premium DataCamp kostenlos für ihre gesamte akademische Laufbahn

Keine Hacks, keine Tricks. Schüler/innen und Lehrer/innen, lest weiter, um zu erfahren, wie ihr die Datenerziehung, die euch zusteht, kostenlos bekommen könnt.
Nathaniel Taylor-Leach's photo

Nathaniel Taylor-Leach

4 Min.

Der Blog

Q2 2023 DataCamp Donates Digest

DataCamp Donates hat im zweiten Quartal 2023 über 20.000 Stipendien an unsere gemeinnützigen Partner vergeben. Erfahre, wie fleißige benachteiligte Lernende diese Chancen in lebensverändernde berufliche Erfolge verwandelt haben.
Nathaniel Taylor-Leach's photo

Nathaniel Taylor-Leach

Der Blog

Die 20 besten Snowflake-Interview-Fragen für alle Niveaus

Bist du gerade auf der Suche nach einem Job, der Snowflake nutzt? Bereite dich mit diesen 20 besten Snowflake-Interview-Fragen vor, damit du den Job bekommst!
Nisha Arya Ahmed's photo

Nisha Arya Ahmed

20 Min.

Der Blog

2022-2023 DataCamp Classrooms Jahresbericht

Zu Beginn des neuen Schuljahres ist DataCamp Classrooms motivierter denn je, das Lernen mit Daten zu demokratisieren. In den letzten 12 Monaten sind über 7.650 neue Klassenzimmer hinzugekommen.
Nathaniel Taylor-Leach's photo

Nathaniel Taylor-Leach

8 Min.

Der Blog

Top 30 Generative KI Interview Fragen und Antworten für 2024

Dieser Blog bietet eine umfassende Sammlung von Fragen und Antworten zu generativen KI-Interviews, die von grundlegenden Konzepten bis hin zu fortgeschrittenen Themen reichen.
Hesam Sheikh Hassani's photo

Hesam Sheikh Hassani

15 Min.

Der Blog

Die 32 besten AWS-Interview-Fragen und Antworten für 2024

Ein kompletter Leitfaden zur Erkundung der grundlegenden, mittleren und fortgeschrittenen AWS-Interview-Fragen, zusammen mit Fragen, die auf realen Situationen basieren. Es deckt alle Bereiche ab und sorgt so für eine abgerundete Vorbereitungsstrategie.
Zoumana Keita 's photo

Zoumana Keita

30 Min.

Mehr anzeigenMehr anzeigen