fusionar antes de build en jenkins falla, pero no debería

Configuré jenkins para comstackr todas las twigs de características en un proyecto y antes de la compilation fusionarlas para 'desarrollar' ya que estoy más interesado si el resultado de las comstackciones de fusión en lugar de la twig de características en sí.

Esto parece funcionar si la twig de características se basa en desarrollar HEAD, pero si el punto de ramificación está antes de desarrollar HEAD, entonces jenkins dice: ERROR: Branch no es adecuado para la integración ya que no se fusiona limpiamente.

Y esto estaría bien si hubiera un conflicto. Pero no hay conflicto He probado la fusión manualmente en la console y la fusión se realiza automáticamente.

Además, si se compara la twig de características y se desarrolla en alijo atlassian, también se muestra una diferencia limpia sin ningún conflicto.

Estoy perdido. ¿Por qué no pueden jenkins fusionarlo?

Lo encontré yo mismo. Fue porque git en el server jenkins no estaba configurado con el nombre del autor / correo electrónico.

Después de configurar esto (bajo comportamientos adicionales) resolvió el problema.

Tuve el mismo error cuando estaba atascado tratando de build una twig anterior SHA-1. Quité la twig, todavía intentó build la twig SHA-1 y falló de la misma manera. Configuré git con el nombre del autor / correo electrónico como se sugirió, pero aún así falló. Luego eliminé el directory raíz del espacio de trabajo de Jenkins y el error cambió a "No se pudo completar …". Luego recreé la twig directamente desde el maestro, cargué un cambio menor y creé una request de extracción. Jenkins reconstruyó la nueva twig correctamente y comenzó a trabajar de nuevo. Esto discute el problema "No se pudo realizar el pago": https://issues.jenkins-ci.org/browse/JENKINS-26748

También encontré que este error ocurrió si Jenkins / git se configuró para hacer un clon superficial. Si eres un clon superficial, deberás deshabilitarlo:

  1. desmarque "Clon superficial" en "Comportamientos adicionales -> Comportamientos de clonación avanzada" en la configuration del trabajo
  2. pon en blanco la profundidad de clonación superficial (o si todavía existía clonación superficial si había algún valor aquí)
  3. elimine cualquier espacio de trabajo para este trabajo, ya que no "desalineará" el clon, tendrá que volver a clonar.

Tengo varios proyectos en Gitlab que usan jenkins, pero a veces un proyecto plantea este problema. Así que no creo que sea por un nombre o un correo electrónico.

Siempre, git tire de la stream ascendente, asegúrese de que el local sea consistente con el control remoto, luego git commit --amend (puede salir, no es necesario editarlo) -> git pull -0> git push – -> start jenkins .