Definition „Pull-Anfrage“ Was ist ein Pull Request?

Von 4lagigdeluxe

Bei einem Pull Request geht es darum, einem Software-Projekt Quellcode hinzuzufügen, der anschließend einem Review-Prozess unterzogen werden kann, bevor der Code in einem Branch veröffentlicht wird – ein sehr effektiver und standardisierter Prozess.

Der „git pull“-Befehl stößt ein Update der Code-Basis an, wobei nur die Änderungen seit dem vorangegangenen Pull eingespielt werden.
Der „git pull“-Befehl stößt ein Update der Code-Basis an, wobei nur die Änderungen seit dem vorangegangenen Pull eingespielt werden.

Mit einem Pull-Request mit Github sendet man prinzipiell eine Anfrage (Englisch: Request) an einen projektverantwortlichen Softwareentwickler, der dann die Möglichkeit hat, die eingebrachten Änderungen oder Erweiterungen im Haupt-Repository (Master-Branch) aufzunehmen. Der Begriff „Pull Request“ geht auf die Operationen von Versionsverwaltungen zurück – in Github lauten diese „git pull“ bzw. „git merge“.

Bei einem Pull Request sollen Änderungen eines Branches in die Haupt-Quellcodebasis übernommen werden. Mit dem git-pull-Befehl können Inhalte aus einem Remote-Repository heruntergeladen werden mit dem Ziel, die lokale Codebasis auf dem eigenen Rechner zu aktualisieren, um diese auf den aktuellen Stand zu bringen.

Abfrage eines Pull Requests

Um die aktuelle Code-Basis eines Softwareprojektes herunterzuladen, verwendet man in einem ersten Schritt den Befehl „git clone“. Hierzu sucht man sich auf Github das jeweilige Projekt mit der dazugehörigen URL aus und stößt den Download etwa wie folgt an:

git clone https://github.com/bili123/cli-help.git

Im Laufe der Zeit werden neue Versionen der Code-Basis durch den Projektverantwortlichen veröffentlicht. Um den eigenen Versionsstand zu aktualisieren, wechselt man einfach ins eigene Projektverzeichnis und stößt mit „git pull“ das Update an, wobei nur die Änderungen der Codebasis übernommen werden.

Nach einem Pull Request erhält man als Projektteilnehmer die Möglichkeit, den Code zu erweitern oder Fehler zu beheben. Hierzu erstellt man auf dem eigenen Rechner einen neuen Branch, in dem die Änderungen vorgenommen werden. Die abgeschlossenen Änderungen können anschließend mit einem „git push“ in den Remote-Branch hochgeladen werden.

Dort werden sie dann vom Projektverantwortlichen einem Review unterzogen, und er kann entscheiden, ob die Änderungen mit einem Merge ins Haupt-Repository übernommen werden sollen oder nicht. Auf der Online-Plattform von Github können eingebrachte und vorgeschlagene Änderungen öffentlich diskutiert werden.

Pull Request auf Github

Codeänderungen können auch direkt auf der Online-Plattform vorgeschlagen werden. Hierzu wählt man auf Github das Projekt aus und wählt im Projektfolder den Tab „Pull Requests“ aus. Hier erscheint eine Liste aller vorhandenen offenen Pull Requests. Nun wählt man das Feld „New Pull Request“ und klickt anschließend auf „Edit“, um direkt im Browser die Änderungen einzufügen und zu bearbeiten. Wenn man fertig ist, klickt man auf „Create Pull Request“. Es sollte nicht vergessen werden, die vorgeschlagenen Änderungen in wenigen Worten zu beschreiben.

Der Projektverantwortliche kann jetzt entscheiden, ob die Änderungen angenommen werden sollen. Sollte der Änderungsvorschlag in einem Pull münden, der vom Projektleiter mit einem Fetch und Merge ausgelöst wird, dann wurde die Änderung angenommen und in den Main-Branch eingebaut.

(ID:48733103)

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Softwareentwicklung und DevOps

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung