Cerrar varios problemas en Github con un mensaje de confirmación


Sé que puedes cerrar problemas poniendo closes #1 o fixes #1 en el mensaje de confirmación. ¿Cuál es la mejor manera de cerrar varios problemas en el mismo mensaje de confirmación?

Además, parece que usar fixes en lugar de closes no crea un enlace desde el mensaje de confirmación al problema, pero hace cerrar el problema. Qué pasa con eso?

Author: Esoteric Screen Name, 2010-08-23

3 answers

Closes #1, closes #2, closes #3; rest of commit message.

Las cláusulas closes pueden estar en cualquier parte del mensaje y fixes es un sinónimo válido:

This fixes a memory leak in foo() that closes #4,
also fixes #5 which is a duplicate.

Los siguientes solían trabajar, pero hoy en día solo referencias números #2 y #3.

Closes #1, #2, #3

 133
Author: Jakob Borg,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-03-12 14:31:04

La respuesta y un comentario a esa respuesta mencionan el siguiente formato:

Cierra #1, cierra #2, cierra # 3; Mensaje de confirmación real

Si tuviera un proyecto en el que valiera la pena participar y alguien enviara una solicitud de extracción con dichos mensajes de confirmación, rechazaría la extracción sin importar lo hermoso que fuera el código.

Es posible que esto sea solo una cuestión de mi preferencia personal y termine golpeado hasta el suelo por personas acostumbradas a compactar mensajes de confirmación que desordenar los resúmenes del historial de Git, pero preferiría ver mensajes de confirmación con el formato:

Resumen del cambio realizado.

Corregidos los siguientes errores:
* Cargador de errores modificado, correcciones # 1
* Devolvió un puntero sin escala, corrige #2
* Nuevos gráficos aplicados a elementos gui, cierra #3

Pidió la mejor manera de cerrar múltiples problemas.

También tenga en cuenta que si envía el commit con el mensaje a cualquier otra rama que la rama predeterminada actual de su repositorio, solo se hará referencia a los problemas. Empujar el commit a la rama principal cerrará los problemas. Ver: Enlace al número de problema de GitHub no funciona?

 35
Author: JNissi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-23 11:46:41

Tenga en cuenta que, desde Enero de 2013 ," Cerrar problemas a través de Mensajes de confirmación " ha cambiado:

Ahora, cuando ingresas "Fixes #33 " en un mensaje de confirmación, el problema 33 solo se cerrará una vez que la confirmación se fusiona con tu rama predeterminada (generalmente master).

Esto es súper útil porque significa que el estado abierto / cerrado del problema se asignará a su rama predeterminada.
Si el error no se soluciona en su rama predeterminada, el problema permanecerá abierto.
Una vez que el commit con la solución se fusiona en su rama predeterminada el problema se cerrará automáticamente.

Puede usar cualquiera de estas palabras clave para cerrar un problema a través de un mensaje de confirmación:

close, closes, closed, fixes, fixed

Como lo ilustra la pregunta " Cerrando un problema de GitHub mientras está en una rama diferente", esto causa cierta confusión al principio.

 9
Author: VonC,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-23 12:32:14