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.