¿Qué son las solicitudes de incorporación de cambios?

Completado

Empezamos por:

  • Revisar ramas y su importancia para las solicitudes de cambios.
  • Definir qué es una solicitud de cambios.
  • Aprenda a crear una solicitud de incorporación de cambios, revisar los estados de la solicitud de incorporación de cambios y combinar una solicitud de incorporación de cambios.

Ramas

En primer lugar, vamos a definir qué son las ramas, por qué son importantes para los desarrolladores y cómo se relacionan con las solicitudes de cambios.

Las ramas son áreas de trabajo aisladas en las que puede desarrollar el trabajo sin afectar a otros usuarios del repositorio. Permiten desarrollar características, corregir errores y experimentar de forma segura con nuevas ideas en un área independiente del repositorio.

Trabajar en ramas independientes se ha convertido en un concepto habitual entre los desarrolladores y en el desarrollo de software moderno. Al tener su propia rama, un desarrollador puede realizar cualquier cambio, llamado confirmación, sin preocuparse de cómo afectará a otros desarrolladores que trabajan en sus propias ramas.

Combinación de ramas

Aunque hacer que cada desarrollador trabaje en una rama separada es estupendo para la productividad individual, abre un nuevo reto. En algún momento, la rama de cada desarrollador debe combinarse en una rama común, como main. A medida que los proyectos van escalando, puede haber numerosas combinaciones que deban realizarse, por lo que cada vez es más importante llevar un seguimiento de cada una de ellas y revisarlas. La necesidad de realizar un seguimiento de los múltiples cambios de un proyecto es la razón de ser de las solicitudes de cambios.

¿Qué es una solicitud de incorporación de cambios?

Una solicitud de cambios es una manera de documentar los cambios de rama y comunicar que los cambios de la rama del desarrollador están listos para combinarse en la rama base (principal). Las solicitudes de cambios brindan una oportunidad a las partes interesadas para que revisen y discutan los cambios propuestos, de cara a garantizar que la calidad del código de la rama base se mantenga lo más alta posible.

Una solicitud de incorporación de cambios compara los cambios entre dos ramas:

  • La rama de comparación es la propia rama del desarrollador, que contiene los cambios específicos realizados.
  • La rama base, también llamada rama principal, es la rama en la que se deben combinar los cambios.

Al iniciar una solicitud de incorporación de cambios, GitHub muestra automáticamente la vista de comparación de ramas.

Creación de una solicitud de incorporación de cambios

Ahora vamos a revisar cómo crear una solicitud de cambios.

  1. En GitHub.com, vaya a la página principal del repositorio.

  2. En el menú Rama, seleccione la rama que contiene las confirmaciones.

    Recorte de pantalla de cómo crear una nueva rama y asignarle un nombre.

  3. Encima de la lista de archivos, en el banner amarillo, seleccione el botón Comparación y solicitud de cambios para crear una solicitud de cambios para la rama asociada.

    Recorte de pantalla de un cuadro de texto amarillo, resaltando el botón de comparación verde y solicitud de incorporación de cambios.

  4. En el menú desplegable de la rama base, seleccione la rama en la que desea combinar los cambios. A continuación, seleccione el menú desplegable comparar rama para seleccionar la rama en la que realizó los cambios.

  5. Escriba un título y una descripción para la solicitud de incorporación de cambios.

  6. Para crear una solicitud de cambios lista para su revisión, seleccione el botón Crear solicitud de cambios. Para crear una solicitud de cambios en borrador, seleccione la lista desplegable y seleccione Crear borrador de solicitud de cambios y, a continuación, seleccione Borrador de solicitud de cambios.

Estados de la solicitud de cambios

Ahora vamos a revisar los distintos estados de una solicitud de cambios.

  • Borrador de solicitud de cambios: al crear una solicitud de cambios, puede elegir crear una solicitud de cambios lista para su revisión o un borrador de solicitud de cambios. No se puede combinar una solicitud de cambios con un estado de borrador, y no se solicita automáticamente a los propietarios del código que revisen los borradores de solicitud de cambios.

  • Solicitud de cambios abierta: un estado abierto significa que la solicitud de cambios está activa y aún no se ha combinado con la rama base. Todavía puede realizar confirmaciones y analizar y revisar los posibles cambios con colaboradores.

  • Solicitud de cambios cerrada: puede optar por cerrar una solicitud de cambios sin combinarla en la rama base o principal. Esta opción es útil si los cambios propuestos en la rama ya no son necesarios o si se propone otra solución en otra rama.

  • Solicitud de cambios combinada: el estado de la solicitud de cambios combinada significa que las actualizaciones y confirmaciones de la rama de comparación se combinaron con la rama base. Cualquier persona con acceso de escritura al repositorio puede completar la fusión.

Combinar una solicitud de incorporación de cambios

  1. En el nombre del repositorio, seleccione Solicitudes de cambios.

    Recorte de pantalla de la barra de navegación superior de un repositorio con la pestaña Solicitud de incorporación de cambios resaltada.

  2. En la lista Solicitudes de cambios, seleccione la solicitud de cambios que desea combinar.

  3. Desplázate hasta la parte inferior de la solicitud de incorporación de cambios. Según las opciones de fusión habilitadas para tu repositorio, puedes:

    • Combine todas las confirmaciones en la rama base seleccionando el botón Combinar solicitud de cambios. Si no se muestra la opción Combinar solicitud de cambios, seleccione el menú desplegable combinar, seleccione la opción Crear una confirmación de combinación y, a continuación, seleccione el botón Crear una confirmación de combinación.

      Recorte de pantalla del menú desplegable del botón de solicitud de incorporación de cambios de combinación verde con la opción Crear una confirmación de combinación seleccionada.

    • La aplicación de squash y la fusión mediante combinación le permiten tomar todas las confirmaciones y combinarlas en una. Esta opción ayuda a mantener el historial del repositorio más legible y organizado. Seleccione la opción Aplicación de squash y fusión mediante combinación y, a continuación, seleccione el botón Aplicación de squash y fusión mediante combinación.

    • La opción Fusión mediante cambio de base y fusión mediante combinación permite realizar confirmaciones sin una confirmación de combinación. Esto mantiene un historial de proyectos lineales. Seleccione el menú desplegable de combinación y, a continuación, elija la opción Fusión mediante cambio de base y fusión mediante combinación y, a continuación, seleccione el botón Fusión mediante cambio de base y fusión mediante combinación.

  4. Si se le solicita, escriba un mensaje de confirmación o acepte el mensaje predeterminado.

  5. Si tiene más de una dirección de correo electrónico asociada a su cuenta en GitHub.com, seleccione el menú desplegable de dirección de correo electrónico y seleccione la dirección de correo electrónico que se usará como dirección de correo electrónico del autor de Git. Solo aparecen direcciones de correo electrónico verificadas en este menú desplegable. Si ha habilitado la privacidad de la dirección de correo electrónico, se usa un correo electrónico de GitHub sin respuesta como dirección de correo electrónico del autor de confirmación predeterminada.

    Recorte de pantalla de un cambio de confirmación con un cuadro de descripción y el menú desplegable del correo electrónico para seleccionar como autor de la confirmación.

  6. Seleccione Confirmar combinación, Confirmar aplicación de squash y fusión mediante combinación o Confirmar fusión mediante cambio de base y fusión mediante combinación.

  7. Opcionalmente, puede eliminar la rama de comparación para mantener ordenada la lista de ramas en el repositorio.

Opciones avanzadas de solicitud de incorporación de cambios

Además de crear y combinar solicitudes de incorporación de cambios, hay algunas opciones avanzadas que ayudan a los equipos a mantener código de alta calidad.

Solicitar revisores

Puede solicitar colaboradores específicos para revisar la solicitud de incorporación de cambios. Solo los colaboradores con acceso de escritura al repositorio se pueden seleccionar como revisores. Esto ayuda a asegurarse de que las personas adecuadas revisen los cambios antes de combinarlos.

  1. Al crear o ver una solicitud de incorporación de cambios, busque la sección Revisores en la barra lateral derecha.
  2. Busque y seleccione los nombres de usuario de GitHub de colaboradores que tienen acceso de escritura al repositorio.
  3. Los revisores seleccionados recibirán una notificación para revisar la solicitud de incorporación de cambios.

Revisiones necesarias y reglas de protección de ramas

Algunos repositorios usan reglas de protección de rama que requieren solicitudes de incorporación de cambios para cumplir ciertas condiciones antes de que se puedan combinar. Entre los requisitos comunes se incluyen:

  • Al menos una revisión de aprobación de otro colaborador.
  • Pasar todas las comprobaciones de estado necesarias, como flujos de trabajo de integración continua (CI).

Si una solicitud de incorporación de cambios no cumple estos requisitos, el botón combinar se deshabilitará hasta que se cumplan todas las condiciones.

Puede ver las reglas necesarias para un repositorio en la parte inferior de la página de solicitud de incorporación de cambios, en la sección Combinar.

Normalmente, los administradores del repositorio configuran estas reglas en la configuración de protección de ramas.

Comprobaciones de estado e integración continua (CI)

Si el repositorio usa Acciones de GitHub u otro sistema de CI, las solicitudes de incorporación de cambios pueden ejecutar automáticamente comprobaciones de estado cuando se realizan cambios. Algunos ejemplos son:

  • Ejecución de pruebas unitarias
  • Comprobación del formato de código
  • Comprobación de exámenes de seguridad

Normalmente, las solicitudes de incorporación de cambios deben pasar todas las comprobaciones de estado necesarias para poder combinarlas en la rama base. Las comprobaciones con errores se muestran directamente en la página de solicitud de incorporación de cambios.

Guardar repositorios con Estrellas

Cuando encuentre un repositorio que le gustaría volver a visitar fácilmente más adelante, puede verlo en GitHub. Al protagonizar un repositorio, se guarda en la lista personal de favoritos y se muestra su agradecimiento a los mantenedores del repositorio.

Para estrellar un repositorio:

  1. Vaya a la página del repositorio en GitHub.com.
  2. En la esquina superior derecha, seleccione el ⭐ botón Estrella .

Puede ver todos los repositorios que ha protagonizado seleccionando la imagen de perfil y, a continuación, Sus estrellas.

Métodos abreviados de teclado

GitHub ofrece muchos métodos abreviados de teclado para ayudarle a avanzar más rápido a través del trabajo.

Para ver todos los accesos directos disponibles:

  • Presione ? en cualquier lugar de GitHub.com.

Verá una lista de accesos directos para navegar por problemas, solicitudes de incorporación de cambios, repositorios y mucho más.

Uso de la paleta de comandos

La paleta de comandos en GitHub le ayuda a saltar rápidamente a páginas, ejecutar acciones comunes o repositorios de búsqueda sin quitar las manos del teclado.

Para abrir la paleta de comandos:

  • Presione Ctrl+K (Windows/Linux) o ⌘+K (Mac).

Puede empezar a escribir acciones como "Crear solicitud de incorporación de cambios", "Ver problemas" o "Cambiar rama" para ir al instante donde necesite.

Aplicar lo que ha aprendido

A continuación, realice un ejercicio en el que se aplica lo aprendido a un ejemplo de la vida real.