Een pull request (PR) is een formeel voorstel om een set codewijzigingen aan het hoofdproject toe te voegen. In plaats van dat een developer de gedeelde codebase rechtstreeks aanpast, bundelt die zijn werk en vraagt het team om er eerst naar te kijken. Pas nadat iemand het goedkeurt, wordt de wijziging samengevoegd. Het is het controlepunt tussen ‘ik heb wat code geschreven’ en ‘dit is nu onderdeel van het product’.
Zie het als een artikel inleveren bij een redacteur voordat het wordt gepubliceerd. Je zet je concept niet meteen op de voorpagina. Je geeft het aan een redacteur die het leest, verbeteringen voorstelt en het pas vrijgeeft als het stevig staat. Een pull request is die redactiestap voor code: teamgenoten lezen de wijziging, draaien er geautomatiseerde checks op, plaatsen opmerkingen en keuren het goed als het klaar is. Dit is de natuurlijke plek voor code review, en het leunt op versiebeheer om precies bij te houden wat er is veranderd.
Het voordeel is meer dan bugs opvangen. Een pull request legt een heldere geschiedenis vast van elke wijziging en waarom die is gemaakt, en het verspreidt kennis zodat niet één persoon de enige is die een deel van het systeem begrijpt.
De omvang is hier de stille factor. Een kleine PR van vijftig regels wordt zorgvuldig gelezen en dezelfde dag samengevoegd. Een reus van tweeduizend regels krijgt een vermoeid “ziet er goed uit,” want niemand kan het allemaal overzien, en juist daar glippen bugs doorheen. Dus goede teams houden elke commit en elk verzoek klein en op één ding gericht, waardoor de review echt iets betekent in plaats van een stempel.
Bij TopDevs gaat elke wijziging aan jouw software door een pull request en een review, zodat bugs worden opgevangen voordat ze jou bereiken en het hele team de codebase begrijpt.