De qué twig se empuja un file

¿Es posible get el nombre de la sucursal desde donde se envía un file en particular a la sucursal maestra remota?

Accidentalmente, estoy en tal condición que se supone que debo identificar de qué twig se inserta un file inesperado en el maestro.

Como hay miles de confirmaciones, no será posible realizar una búsqueda exhaustiva a través de las confirmaciones.

Cualquier ayuda es muy apreciada.

Debido a que las twigs son solo indicadores de confirmaciones particulares en el repository, git en realidad no hace un seguimiento de las twigs de esa manera.

Dicho esto, sería posible encontrar el compromiso que causó el problema y muy probablemente la twig que se presionó (aunque esto dependerá de su flujo de trabajo).

Primero use git log -1 -- <file> , esto mostrará la última confirmación que involucra el file. De su pregunta, realmente debería haber solo una.

Sabiendo esto, todo lo que tenemos que hacer es encontrar las twigs que contienen este compromiso particular. A partir de esta respuesta, el command que queremos es git branch -a --contains <commit> Esta list debe contener el maestro remoto y la twig culpable que está buscando. El -a agregará todas las twigs remotas de las que su repository tenga conocimiento.

Dependiendo de la cantidad de fusión que haya ocurrido, esta list debe limitarse al maestro y a la twig que está buscando. De lo contrario, contendrá todas las twigs que también se fusionaron con la twig que está buscando.

Si ese es el caso, puede examinar el historial para encontrar la confirmación de fusión. git log --graph 'mostrará' las twigs y fusiones que ocurren. Ingrese este command y luego escriba / <sha of file commit> que debería llevarlo a la confirmación que creó el file. A continuación, trace la línea para el compromiso hacia adelante hasta que obtenga la confirmación de fusión que debe contener el nombre de la sucursal. Este método puede ser complicado dependiendo de cómo se vea la historia.

Para encontrar qué usuario lo agregó, lo que podría dar una pista a la sucursal.

  git blame FILENAME | head 

para encontrar el compromiso donde fue agregado y su valor SHA1

 git log --oneline --decorate --diff-filter=A -- FILENAME 

para encontrar la twig que lo agregó (¡si el logging de ref regresa tan lejos!)

 git ref-log | grep SHA1VALUE