|
Pull RequestsJoan Puigcerver Ibáñez Pull Requests¶Una Sol·licitud de Incorporació o Pull Request (PR) és una sol·licitud per a incorporar canvis a una branca d'un repositori. Les PR poden ser utilitzats per a:
La utilització de les PR aporta molts avantatges, com ara:
Aquesta funcionalitat és essencial per a la col·laboració en projectes, especialment els de codi obert, on els mantenidors poden revisar els canvis proposats per la comunitat. Exemple de Pull Request a Material for MkDocsEn el repositori Material for MkDocs existeixen múltiples PR on s'han realitzat canvis per a millorar el tema o actualitzar la documentació. Figura 1. Exemple de Pull Request en el repositori Material for MkDocs Creació d'una Pull Request¶Per crear una PR, cal accedir al teu fork o branca i fer clic al botó Pull Request. En el procés de creació d'una PR s'han de seleccionar els repositori i les branques associades a la PR:
A més, es pot afegir informació addicional com:
Creació d'una Pull RequestEn aquest exemple s'ha creat una PR per incorporar nous canvis a la documentació de Material for MkDocs.
Figura 2. Comparació de canvis en una Pull Request Una vegada creat la PR, es pot sol·licitar la revisió dels canvis a altres usuaris i realitzar els canvis necessaris fins a la seua acceptació. Les PR poden estar en quatre estats diferents:
Enllaçar incidències a una Pull Request¶Quan es treballa en un projecte, sovint les Pull Request estan relacionades amb incidències específiques. GitHub permet enllaçar-les de tal manera que, quan la PR és acceptada, les incidències es tancaran automàticament. A més, millora la traçabilitat del desenvolupament i facilita el seguiment dels canvis realitzats per a la resolució de les incidències. Documentació
Les incidències poden ser enllaçades a una PR de dues maneres:
Exemple d'incidències enllaçades a una PRLa següent imatge mostra una PR sobre el repositori Material for MkDocs s'ha referenciat una incidència per resoldre la barra lateral en el navegador Firefox. Figura 3. Incidència enllaçada a una Pull Request Incorporació d'una Pull Request¶Quan una PR és acceptada, els canvis s'incorporen a la branca de destí i la PR és marcada com a fusionada. La incorporació del PR es pot realitzar de tres maneres diferents:
Recomanació La fusió en un sol commit ( Si es desitja consultar el procés de revisió de la branca, sempre es pot accedir a la PR on es troben tots els canvis realitzats. Figura 4. Tipus de fusió d'una Pull Request Configuració de les Pull Requests¶El repositori pot ser configurat per habilitar les diferents tècniques de incorporació, entre altres configuracions a l'apartat Pull Requests de la configuració del repositori ( Settings). Figura 5. Configuració de les opcions de les Pull Requests Flux de treball¶El flux de treball amb les PR no és diferent a les a Estratègies de ramificació, sinó que ens proporciona un mecanisme addicional per a la revisió i incorporació de canvis. Aquest flux de treball pot ser el següent:
Protecció de branques¶Per a evitar canvis no desitjats en les branques principals
i evitar problemes deguts a una mala aplicació de les Estratègies de ramificació,
les branques importants (com Per configurar les regles de protecció de branques, cal accedir a la configuració del repositori Settings i buscar l'apartat Rules. Aquestes regles permeten definir les condicions per modificar la branca especificada, com ara:
Figura 6. Protecció de branques 📌 Aquest document pot quedar desactualitzat després d’imprimir-lo. Pots consultar la versió més recent
a la pàgina web.
🌿 Abans d’imprimir aquest document, considera si és realment necessari. Redueix el consum de paper i ajuda a protegir el nostre entorn.
|