Ejercicio: Adición de una regla para requerir una revisión

Completado

En esta unidad configurará una regla en GitHub que requiera que un revisor apruebe los cambios antes de que se puedan combinar en la rama main. Como tarea adicional, también corregirá el error tipográfico en la página principal del sitio web Space Game.

Actualmente, el equipo permite que cualquiera que realice una solicitud de incorporación de cambios combine el código en la rama main. Como no se requiere ninguna revisión, es posible que código incorrecto o inestable pase inadvertido.

Andy decide que quiere agregar una comprobación a la solicitud de incorporación de cambios en forma de otro par de ojos. Quiere configurar GitHub para solicitar a alguien que no sea el autor de la solicitud de incorporación de cambios que revise el código antes de que se combine. Veamos cómo hacerlo.

Andy va en busca de Mara y la encuentra trabajando en su mesa, moviendo la cabeza al ritmo de la música de sus auriculares.

Andy: Mara, te quería comentar una cosa.

Mara le mira.

Mara: ¿En qué te puedo ayudar?

Andy: Varios errores menores se han filtrado en la compilación. Justo hoy ha aparecido un error ortográfico en la página principal. Amita tiene que dedicarle demasiado tiempo a estas cosas. Necesitamos detenerlos antes de que lleguen a la rama main. Necesitamos otro par de ojos en el código antes de que se apruebe la solicitud de incorporación de cambios.

Mara: Lo puedo configurar. En GitHub, hay una manera de asegurarse de que no se combine ninguna solicitud de incorporación de cambios antes de que alguien la revise y la apruebe.

Configuración de aprobaciones

En esta sección configurará una regla en GitHub que requiere al menos un revisor para aprobar una solicitud de incorporación de cambios antes de que se pueda combinar en la rama main. A continuación, comprobará que la regla funciona insertando una corrección del error tipográfico que Mara ha cometido antes.

Adición de la regla

  1. En GitHub, vaya al repositorio del proyecto Space Game.
  2. Seleccione la pestaña Configuración situada junto a la parte superior de la página.
  3. En el menú de la izquierda, seleccione Ramas.
  4. Asegúrese de que la rama principal esté seleccionada como predeterminada.
  5. Seleccione Añadir regla de protección de rama.
  6. En Patrón de nombre de rama, escriba principal.
  7. Active la casilla Requerir una solicitud de cambios antes de combinar.
  8. Active la casilla Requerir aprobaciones.
  9. Mantenga el valor de Required approving reviews (Revisiones de aprobación obligatorias) en 1.
  10. Seleccione Crear.
  11. Seleccione Save changes (Guardar los cambios).

Nota:

En la parte inferior de la lista de opciones hay una opción denominada Include Administrators (Incluir administradores). Esta opción requiere que los administradores del repositorio sigan la regla. No la ha establecido porque es un administrador del repositorio y no hay ningún otro revisor. En esta unidad, con fines de aprendizaje, revisará y aprobará sus propias solicitudes de incorporación de cambios.

Envío de la corrección

En esta sección enviará una corrección para el error tipográfico de la página principal. Recuerde que la palabra "official" está mal escrita: "oficial".

Screenshot of the Space Game website showing a typing error.

  1. En Visual Studio Code, vaya al terminal.

  2. Para extraer la rama main, ejecute git checkout:

    git checkout main
    
  3. Para incorporar los cambios más recientes a la rama main desde GitHub, ejecute git pull:

    git pull origin main
    

    Verá que se actualizan dos archivos:

    • README.MD: contiene el código de Markdown para mostrar la notificación de compilación.
    • Index.cshtml: contiene el texto actualizado de la página principal, que incluye el error tipográfico.
  4. Para corregir el error, cree y revise una rama:

    git checkout -B bugfix/home-page-typo
    
  5. En el Explorador de archivos, abra Index.cshtml.

  6. Busque el error:

    <p>Welcome to the oficial Space Game site!</p>
    
  7. Cambie la línea para corregir el error:

    <p>Welcome to the official Space Game site!</p>
    
  8. Guarde el archivo.

  9. En el terminal, almacene de forma provisional el cambio y confírmelo:

    git status
    git add Tailspin.SpaceGame.Web/Views/Home/Index.cshtml
    git commit -m "Fix typing error on the home page"
    

    En la práctica, normalmente podría compilar y ejecutar el sitio de forma local para comprobar el cambio. En esta unidad, por razones de brevedad, vamos a omitir ese paso.

  10. Inserte la rama en GitHub.

    git push origin bugfix/home-page-typo
    

Prueba de la regla

  1. En GitHub, busque y seleccione la rama bugfix/home-page-typo.

    Screenshot of GitHub showing the recently pushed branch.

  2. Para iniciar la solicitud de incorporación de cambios (“pull request”), seleccione Contribuir y, a continuación, Open pull request (Abrir “pull request”).

  3. Establezca el repositorio bifurcado como el repositorio base.

    Screenshot of GitHub confirming that the branch can be merged.

  4. Seleccione Crear solicitud de incorporación de cambios.

    Verá que se requiere una revisión humana para poder combinar el cambio.

    Screenshot of a pull request on GitHub showing that a review is required in order to merge.

    En la práctica, podría asignar un miembro del equipo para revisar el cambio. En esta unidad, puede combinar su propia solicitud de cambios con fines de aprendizaje.

  5. Active la casilla Combinar sin esperar a que se cumplan los requisitos (omitir protecciones de rama) y, a continuación, seleccione Combinar solicitud de cambios.

  6. Seleccione Confirm merge (Confirmar combinación).

    El cambio se combina.

  7. Para eliminar la rama bugfix/home-page-typo, seleccione Eliminar rama.