Jenkins después de reiniciar ejecuta especificaciones en las twigs eliminadas

Utilizo Jenkins con un repository de Github, y después de reiniciar, Jenkins ejecuta especificaciones en todas las twigs, incluso en aquellas eliminadas del repository. ¿Cómo hago que jenkins ejecute las especificaciones solo en las sucursales reales de repos?

Esto sucede ya que todavía tiene todas las twigs, tags, etc. en su repository local, lado del cliente. Para evitar usarlos durante el process de compilation, existen algunos escenarios que podría considerar:

  1. El plugin Jenkins git le permite ejecutar git remote prune antes de cada compilation. Como la documentation del command es bastante específica, hará exactamente lo que usted quería:

    Elimina todas las twigs de seguimiento obsoletos de. Estas twigs obsoletas ya se han eliminado del repository remoto al que hace reference, pero todavía están disponibles localmente en "controles remotos /".

    Esta function está disponible en la página de configuration del proyecto, sección Gestión de código fuente , luego encuentre Git y su definición de repository. Debajo de ellos debe tener un button Avanzado , y después de hacer clic en él, una opción llamada Podar twigs remotas antes de la compilation debe ser visible. Asegúrate de que esté marcado y deberías ir bien.

  2. La segunda opción, la que se usa en mi Jenkins y la que personalmente prefiero, es utilizar el plugin Workspace Cleanup . Este complemento eliminará todo el espacio de trabajo de un trabajo determinado antes o después de la ejecución de la compilation del proyecto. Por lo tanto, esto creará un entorno limpio y recién revisado para Your Maven, Ant, […] * lo que sea que se use para build el proyecto. Y sí, requerirá una finalización completa del proyecto, que en algunos casos puede llevar bastante time, pero dará una solución 100% estúpida y libre de errores en la que todos los files serán nuevos, ya que los desarrolladores se propusieron que ser.