WISSENSARTIKEL / PROGRAMMIERUNG & ENTWICKLUNG

Pull Request

Ein zentrales Werkzeug der kollaborativen Softwareentwicklung

◎ KURZDEFINITION

Pull Request Ein Pull Request ist ein Vorschlag zur Integration von Änderungen in ein Softwareprojekt, der eine Überprüfung und Diskussion vor dem Zusammenführen des Codes ermöglicht.

Eigenständig verständliche Definition
✦

Das Wichtigste auf einen Blick

  • Pull Requests sind essenziell für kollaborative Softwareentwicklung.
  • Sie ermöglichen strukturierte Code-Reviews und Diskussionen.
  • Automatisierung verbessert den Review-Prozess.
  • Kleine und gut dokumentierte Pull Requests sind effektiver.
  • Sie fördern Transparenz und Qualität im Entwicklungsprozess.
01

Überblick: Pull Request

In der modernen Softwareentwicklung, insbesondere bei der Nutzung von Versionsverwaltungssystemen wie Git, ist der Pull Request ein essenzielles Werkzeug. Er dient dazu, Änderungen, die in einem separaten Branch oder Fork vorgenommen wurden, zur Überprüfung und Integration in den Hauptzweig eines Projekts vorzuschlagen. Pull Requests fördern die Zusammenarbeit, verbessern die Codequalität und erleichtern die Nachverfolgbarkeit von Änderungen.

02

Was ist ein Pull Request?

Ein Pull Request (PR) ist ein Mechanismus in verteilten Versionskontrollsystemen, insbesondere Git, mit dem Entwickler Änderungen an einem Code-Repository vorschlagen. Er ermöglicht es anderen Teammitgliedern, den vorgeschlagenen Code zu überprüfen, Feedback zu geben und die Änderungen vor der Integration in den Hauptzweig zu diskutieren.

03

Funktionsweise eines Pull Requests

Der Entwickler erstellt zunächst einen separaten Branch, in dem er seine Änderungen vornimmt. Anschließend öffnet er einen Pull Request, um diese Änderungen zur Überprüfung vorzuschlagen. Reviewer können den Code kommentieren, Verbesserungsvorschläge machen oder die Änderungen genehmigen. Nach erfolgreicher Prüfung wird der Pull Request gemerged, also in den Hauptzweig integriert.

04

Typische Schritte beim Erstellen eines Pull Requests

SchrittBeschreibung
1. Branch erstellenNeuen Branch vom Hauptzweig anlegen
2. Änderungen vornehmenCodeänderungen im Branch durchführen
3. Pull Request öffnenÄnderungen zur Überprüfung vorschlagen
4. Review und DiskussionFeedback einholen und Änderungen anpassen
5. MergeÄnderungen in den Hauptzweig integrieren
05

Vorteile und Herausforderungen von Pull Requests

VorteileHerausforderungen
Verbesserte Codequalität durch ReviewsZeitaufwand für Reviews
Förderung der ZusammenarbeitMögliche Verzögerungen im Entwicklungsprozess
Dokumentation von ÄnderungenKonflikte bei parallelen Änderungen
Integration automatisierter TestsAbhängigkeit von Reviewer-Verfügbarkeit
06

Beispiel: Pull Request auf GitHub

✦

Auf GitHub erstellt ein Entwickler einen Pull Request, indem er im Repository auf "New Pull Request" klickt, den Quell- und Zielbranch auswählt und eine Beschreibung hinzufügt. Teammitglieder können dann den Code einsehen, Kommentare hinterlassen und den Pull Request genehmigen oder ablehnen.

07

Vergleich von Pull Request Plattformen

PlattformIntegrationBesonderheiten
GitHubGitWeit verbreitet, umfangreiche Community, Actions für CI/CD
GitLabGitIntegrierte CI/CD, Self-Hosting möglich
BitbucketGit & MercurialIntegration mit Atlassian-Tools, flexible Berechtigungen
08

Best Practices für Pull Requests

✦

Kleine, fokussierte Pull Requests erleichtern die Überprüfung. Klare Beschreibungen und Referenzen auf relevante Tickets verbessern die Nachvollziehbarkeit. Automatisierte Tests sollten Teil des Review-Prozesses sein.

09

Automatisierung im Pull-Request-Prozess

Viele Plattformen ermöglichen die Integration von Continuous Integration (CI) Tools, die automatisch Tests ausführen, Codequalität prüfen und Sicherheitsanalysen durchführen, sobald ein Pull Request erstellt wird. Dies unterstützt die Qualitätssicherung und beschleunigt den Review-Prozess.

10

Rolle von Pull Requests in der agilen Softwareentwicklung

Pull Requests sind ein zentraler Bestandteil agiler Entwicklungsprozesse. Sie ermöglichen kontinuierliche Integration und fördern die Transparenz im Team. Durch regelmäßige Reviews wird die Codebasis stabil gehalten und die Zusammenarbeit verbessert.

◇

Zusatzinformationen

◇

Definition: Vorschlag zur Integration von Codeänderungen in ein zentrales Repository mit Überprüfungsprozess.

Verwendung: Softwareentwicklung, Versionskontrolle, Code-Review

Typische Plattformen: GitHub, GitLab, Bitbucket

Ziel: Qualitätssicherung und kollaborative Entwicklung

Prozess: Erstellen → Überprüfen → Diskutieren → Zusammenführen

Beteiligte: Entwickler, Reviewer, Projektmaintainer

Aa

Synonyme und alternative Bezeichnungen

?

Häufige Fragen zu Pull Request

Was ist der Unterschied zwischen Pull Request und Merge Request?

Pull Request und Merge Request bezeichnen im Wesentlichen dasselbe Konzept. 'Pull Request' ist der Begriff, der hauptsächlich auf GitHub verwendet wird, während 'Merge Request' bei GitLab gebräuchlich ist.

Kann man einen Pull Request auch ohne Code-Änderungen erstellen?

Nein, ein Pull Request bezieht sich immer auf vorgeschlagene Änderungen im Code oder in Dateien eines Repositories.

Wie lange sollte ein Pull Request offen bleiben?

Idealerweise sollte ein Pull Request so kurz wie möglich offen bleiben, um Konflikte zu vermeiden und den Entwicklungsfluss nicht zu behindern.

Wer kann einen Pull Request genehmigen?

In der Regel können Reviewer oder Projektmaintainer einen Pull Request genehmigen, abhängig von den Zugriffsrechten im Repository.

Was passiert, wenn ein Pull Request abgelehnt wird?

Wenn ein Pull Request abgelehnt wird, kann der Entwickler die vorgeschlagenen Änderungen überarbeiten und einen neuen Pull Request erstellen oder den bestehenden aktualisieren.

Sind Pull Requests nur für Open-Source-Projekte relevant?

Nein, Pull Requests werden sowohl in Open-Source-Projekten als auch in privaten und kommerziellen Softwareprojekten eingesetzt.

Wie unterstützt ein Pull Request die Codequalität?

Durch die Überprüfung und Diskussion der Änderungen vor der Integration helfen Pull Requests, Fehler zu finden, Best Practices einzuhalten und die Wartbarkeit des Codes zu verbessern.

▤

Quellen & weiterführende Informationen

Quellenvorschläge und Nachweise zum Artikel. Bitte externe Inhalte eigenständig prüfen.

3 Quellen
  1. 01
    GitHub Docs: About Pull Requests ↗
    GitHub· DokumentationKI-Vorschlag · ungeprüft

    Offizielle Dokumentation von GitHub zum Thema Pull Requests.

    https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/about-pull-requests
  2. 02
    GitLab Docs: Merge Requests ↗
    GitLab· DokumentationKI-Vorschlag · ungeprüft

    Offizielle Dokumentation von GitLab zu Merge Requests.

    https://docs.gitlab.com/ee/user/project/merge_requests/
  3. 03
    Atlassian Bitbucket: Pull Requests ↗
    Atlassian· ProduktinformationKI-Vorschlag · ungeprüft

    Informationen zu Pull Requests bei Bitbucket.

    https://bitbucket.org/product/features/pull-requests

Artikel teilen oder einbetten

Teile diesen Wissensartikel oder binde eine kompakte Vorschau auf deiner eigenen Website ein.

f Facebookin LinkedIn𝕏 X◉ WhatsApp
War dieser Artikel hilfreich?Dein Feedback hilft, die Wissensplattform zu verbessern.
ANSWER ENGINE · ARTIKEL

Diese Seite in Zahlen

Artikelstatistik
↗–Aufrufe dieses Artikels
◷–Unique Nutzer letzte 24 Stunden
◉–Unique Nutzer heute
▦–Unique Nutzer diesen Monat
Feedback zu diesem Artikel
👍 Ja
0
◐ Teilweise
0
👎 Nein
0

Alle Werte in diesem Abschnitt beziehen sich ausschließlich auf diesen Artikel.

ANSWER ENGINE · GESAMTES NETZWERK

Wissensplattform in Zahlen

Netzwerkstatistik
↗–Seitenaufrufe gesamt
◷–Unique Nutzer letzte 24 Stunden
◉–Unique Nutzer heute
▦–Unique Nutzer diesen Monat

Diese Werte beziehen sich auf die gesamte Plattform und alle veröffentlichten Artikel.