Zum Inhalt springen

Projektanfrage

Sprechen wir ganz unverbindlich über Ihr Projekt.

Oder nutzen Sie unser Kontaktformular

Pull Request

Was ist ein Pull Request?

Ein Pull Request ist ein Vorgang, der in Versionsverwaltungssystemen (git) verwendet wird, um Änderungen an einem Repository vorzuschlagen und zur Überprüfung durch andere Entwickler bereitzustellen.

Wozu dienen Pull Requests?

Pull Requests dienen der Qualitätssicherung.

Der Pull Request dient als Mechanismus, um Änderungen im Code einer Software zur Überprüfung bereitzustellen. Andere Entwickler können den vorgeschlagenen Code prüfen, Kommentare abgeben und Verbesserungsvorschläge machen.

Ein Pull Request in GitHub

So sieht ein offener Pull Request in Github auf.

Er listet die wichtigsten Informationen auf:

  • Wer die Änderung einbringt (der Ersteller)

  • Wer die Änderung prüft (der Reviewer)

  • Welcher Branch gemerged werden soll

  • Welche Änderungen vorgenommen werden sollen

  • In diesem Pull Request sind keine Pipelines ausgeführt worden

Github Pull Request.

Der Prozess eines Pull Requests

  1. Branch erstellen
    Der Entwickler erstellt einen neuen Branch basierend auf dem Hauptentwicklungsstrang (meistens "master" oder "main") des Repositories. Auf diesem Branch werden die Änderungen vorgenommen.

  2. Änderungen vornehmen
    Der Entwickler führt die gewünschten Änderungen am Code durch, um beispielsweise Fehler zu beheben, neue Funktionen hinzuzufügen oder Code zu optimieren.

  3. Pull Request erstellen
    Der Entwickler reicht den Pull Request ein, indem er den geänderten Branch mit dem Hauptentwicklungsstrang des Repositories vergleicht. Dabei werden die vorgeschlagenen Änderungen deutlich gemacht.

  4. Überprüfung und Diskussion
    Andere Entwickler können den Pull Request öffnen, den Code prüfen und Kommentare, Vorschläge oder Fragen dazu abgeben. Es findet ein iterativer Prozess der Überprüfung und Diskussion statt.

  5. Zusammenführen (Merge) des Pull Requests
    Nach Abschluss der Überprüfung und Diskussion entscheidet der verantwortliche Maintainer oder das Entwicklungsteam, ob der Pull Request akzeptiert und der Code mit dem Hauptentwicklungsstrang zusammengeführt wird.

  6. Aktualisierung des Repositorys
    Nach dem erfolgreichen Zusammenführen des Pull Requests werden die Änderungen im Hauptentwicklungsstrang des Repositories wirksam.

Der Unterschied zwischen Pull Requests und Merge Requests

Pull Requests und Merge Requests sind verschiedene Namen für den gleichen Prozess: das Einreichen von Änderungen an Code in einem Repository.

Der Hauptunterschied besteht daran, dass Pull Requests verwendet werden wenn man eine Änderung an einem fremden Repo vornehmen will, bspw. wenn man zu einem Open-Source Repo beitragen möchte.

Wenn ein internes Team Änderungen an ihrem Produkt macht, sind das Merge Requests weil alle Entwickler am selben Repo arbeiten und der Merge innerhalb des Repos stattfindet.