¡Esta es una revisión vieja del documento!
Tabla de Contenidos
Pull Requests
Sección perteneciente al curso Control de versiones con Git Avanzado.
Introducción
Las pull requests son un sistema de revisión del código que se utiliza en equipos muy grandes o donde cualquier persona puede colaborar.
Se basa en que, como desarrollador, yo no voy a poder hacer un merge a develop sino que abriremos una solicitud al equipo de revisión para que mire el código de mi rama y, si todo va bien, la vuelquen a develop.
Creación de pull request y discusión del código
En equipos pequeños, la metodología es, como desarrollador, vamos contribuyendo al proyecto a través de la rama develop.
Sin embargo, en equipos más grandes o proyectos open source, se suele utilizar el método de las pull requests. El código no se sube directamente a develop sino que alguien tiene que revisarlo y luego hacer merge a develop.
El repositorio remoto se configura de manera que los desarrolladores pueden descargarse la rama develop, pero no subirla (hacer el merge), es decir, tiene permiso de solo lectura.
Las pull requests existen en el servidor, no en nuestros equipos locales.
Hay un encargado (o varios) de revisar las peticiones PR (pull request) y de realizar el merge de las ramas a develop.
Cuando abrimos una pull request, subimos nuestra rama de feature e indicamos que esa rama la queremos fusionar con develop.
Puede abrirse un espacio de discusión sobre el código.
Cuando se haya aceptado y fusionado nuestra pull requests, se nos notificará y nosotros, en nuestro repositorio local tendremos que actualizar:
git pull develop
Entonces, podremos borrar nuestra rama local feature.
Pull Requests: caso práctico
Pull Requests con conflictos
Conclusión
Recursos
- Capítulo del libro Pro Git sobre contribuciones a proyectos en GitHub:
