Webhooks de GitHub: cómo detectar el hecho de fusionarse?

Estoy desarrollando una aplicación que detectaría que algo se fusionó en una twig específica y tomar algunas medidas basadas en eso. Para resolver mi problema, necesito encontrar el nombre de una twig que se fusionó con la twig que superviso.

Digamos que GitHub me envía "todo" y mi script debe reactjsr cuando "some-branch" se fusiona con Branch "Tests". Además, mi script debe poder detectar el nombre de la twig fusionada (en este caso, "some-branch").

La única solución que encontré hasta ahora es leer el "post" de propiedad de cada confirmación en la matriz "confirma" y analizarlo. Son bastante típicos: "Merge branch 'some-branch' en Tests".

Hay dos problemas

  • El post teóricamente podría ser modificado por el usuario (por ejemplo, SourceTree muestra tu editor después de resolver el conflicto)
  • En caso de Fast-Forward no hay post

¿Qué podría aconsejar, cómo puedo detectar el hecho de fusión y el nombre de la twig fusionada mejor?

¡Gracias!

Me temo que debido al protocolo de git, esto no siempre es posible.

  1. En el caso de avance rápido, no se crean nuevos blobs, pero solo se transfieren blobs a github.

  2. Si existe un compromiso de fusión, como ya se dio count, el usuario puede anular el post de confirmación.

Supongo que lo mejor que podemos hacer es monitorear una twig, y ​​considerar en términos de empuje en lugar de fusión .

Solo si la fusión de twigs se realiza mediante la request de extracción en github, entonces puede detectar el evento o relacionar cosas, como el evento pull_request_review .

Y para el command para ver las twigs fusionadas en la twig de Tests está la git branch --merged Tests .