Cómo probar pull requests antes que sean fusionadas
Las Pull Requests de Github permiten que las contribuciones de los desarrolladores sean sometidas a pruebas antes de que consigan la aprobación para ser fusionadas en el árbol de código principal.
Los testers solemos estar pendientes de las pull requests que intentan solucionar bugs reportados en Jira, y probarlas localmente es un requerimiento pues depende de nosotros ayudar al creador de la pull request a saber si ha logrado su cometido.
Tomemos como ejemplo este ticket en el que reporté una regresión en el kernel, era importante para mí que sea resuelto, así que esperé a que el desarrollador asignado termine su trbajo y envíe la tan ansiada Pull Request.
En ese momento era mi deber confirmar si la Pull Request solucionaba el problema, así que lo primero que hice fué descargar el patch, algo muy sencillo puesto que en GitHub basta con agregar la extensión .patch a la url para generar el parche completo.
Así, si la Url de la Pull Request luce así:
https://github.com/reactos/reactos/pull/3735
Al agregar la extensión queda así:
https://github.com/reactos/reactos/pull/3735.patch
Ahora buscas en tu navegador la opción "descargar como" y descargas a tu disco duro el archivo .patch, mi recomendación personal es copiarlo en un nivel superior a la carpeta donde guardas tu código fuente de ReactOS.
Cabe destacar que los parches de GIT no son compatibles con la herramienta patch que viene con RosBE, por lo que debemos usar otra vía para parchear los archivos. Por suerte GIT provee el comando git apply, que resulta muy útil ya que interpreta sin problemas el formato generado por GIT.
Ahora abrimos la línea de comandos de GIT, y nos situamos en la raíz de nuestro code tree, en mi caso E:\ReactOS\SRC
CD E:\ReactOS\SRC
git apply ..\3735.patch
Listo, si no han aparecido mensajes de error, podemos abrir RosBE y proceder a compilar el código parcheado y probar los cambios introducidos por la Pull Request.