¿Cómo usar git describe en un compromiso de cabeza separada?

Tengo una twig principal que tiene confirmaciones con annotations no ligeras. El espacio de trabajo se encuentra en un estado separado de la cabeza, es decir, después de haberse desprotegido a través de la tubería multiplanta Jenkins

Cuando ejecuto git describe el nombre de una label realmente antigua, junto con un número muy elevado de confirmaciones desde esa label (por ejemplo, 1.0.0-459-abc1234 )

Cuando ejecuto git tag , obtengo una list de todas las tags, incluidas las más recientes, que me interesan, por ejemplo, 3.1.0 , 3.2.0 .

Estaba pensando en hacer algo como git branch -r --contains HEAD para get el nombre de la twig remota, luego search y verificar eso (Corriendo el riesgo de que en realidad estoy revisando una confirmación posterior a la que desencadenó el tubería, pero lo que sea, está aislado de una request de extracción de todos modos …) O simplemente ejecuta git describe <remote_branch_name> Pero ninguno de los dos funcionó. No entiendo por qué Git preferiría mostrar la label muy antigua en lugar de las más recientes, ya que cualquier request de extracción se deriva de la twig master contiene la label (se garantiza que cada confirmación labelda se encuentre en la twig master )

La razón del problema podría haber sido una versión de git diferente en realidad. Un host tenía una versión de git bastante antigua instalada (1.7.x) después de actualizar a 2.10.x en todas partes, el problema desapareció. Otra posible razón podría ser que a veces actualizamos las tags, apuntándolas a una nueva confirmación (dejamos de hacerlo). Noté en un momento que cuando creas una label liviana y luego la cambias por una label anotada, otro cliente que ya había visto la label liviana, no downloadá la label actualizada, ahora anotada, cuando hagas git fetch --tags , porque reconoce que ya ha visto la label por nombre, y no molesta que el tipo de la label haya cambiado , por lo tanto, git describe no recogerá esa label para ese cliente.