Zum Inhalt springen

Pull Request

oder auch Merge Request, PR

Männliche Person, frontal, schaut in die Kamera; trägt kariertes Hemd über dunkelfarbigem T‑Shirt; heller Innenraum mit unscharfem Monitor oder Poster links und Fenster rechts.

von Richard Albrecht am 30.10.2026

Ein Pull Request ist die Bitte, einen Branch in den gemeinsamen Stand zu übernehmen. Er ist zugleich der Ort, an dem die Änderung besprochen, geprüft und freigegeben wird. Die Einrichtung stammt von GitHub; GitLab nennt dasselbe Merge Request.

Pull Request

Die Bitte, einen Branch in den gemeinsamen Stand zu übernehmen, samt Ort für die Durchsicht.
Beispiel: „Der Pull Request hing zwei Tage, weil niemand sich für die Durchsicht zuständig fühlte.“

Auch: PR, Merge Request, MR. Mit dem Git-Befehl pull hat er nichts zu tun.

Technisch passiert bis zur Freigabe nichts: Der Branch liegt auf dem Remote, und erst die Freigabe löst den Merge aus.

Was ein Pull Request leistet

Drei Dinge auf einmal. Er zeigt die Änderung als Ganzes statt als Folge von Commits, er gibt der Durchsicht einen Ort mit Kommentaren an einzelnen Zeilen, und er hängt die Build-Pipeline davor.

Der dritte Punkt ist der, der am meisten spart. Eine Änderung, die durch die Prüfung fällt, erreicht den Hauptstand gar nicht erst.

Wie groß ein Pull Request sein sollte

Klein genug, dass jemand ihn in zwanzig Minuten versteht. Ab einer gewissen Größe findet keine Durchsicht mehr statt, sondern nur noch ein Durchwinken, und dann ist der ganze Vorgang eine Formalie.

Als Faustregel gelten einige hundert geänderte Zeilen. Wird es mehr, lohnt die Frage, ob sich die Änderung in zwei Schritte teilen lässt.

Was in die Beschreibung gehört

Was sich ändert, warum, und woran man sieht, dass es stimmt. Der dritte Teil wird am häufigsten vergessen und ist für die Durchsicht der wichtigste: Ohne ihn muss jeder selbst herausfinden, wie er die Änderung ausprobiert.

Bei einem Beitrag zu einem fremden Projekt kommt dazu, von welchem Fork der Branch stammt. Das macht die Oberfläche von selbst.

Siehe auch:

Branch

Ein eigener Strang der Geschichte, auf dem gearbeitet wird, ohne den Hauptstand zu berühren.

#Deployment & Versionierung

Merge

Das Zusammenführen zweier Stränge der Geschichte zu einem.

#Deployment & Versionierung

Push (Git)

Das Übertragen eigener Commits zum gemeinsamen Stand.

#Deployment & Versionierung

Fork

Eine eigene Kopie eines fremden Repositorys auf dem Server.

#Deployment & Versionierung

Build-Pipeline

Der eingerichtete Ablauf, der aus einem Stand im Repository ein ausgeliefertes Ergebnis macht.

#Programmiersprachen

Rebase

Das Neuaufsetzen eigener Commits auf einen anderen Stand.

#Deployment & Versionierung