with visual triggered team studio services management for demand changes builds tfs tfs2010 tfsbuild tfvc gated-checkin

visual - TFS 2010: registro cerrado en la sucursal principal; Rolling Builds en Dev Branch?



release management tfs (1)

Recientemente, migré de VSS a TFS 2010 y me encanta, pero hay algo que aún no he podido hacer funcionar como creo que debería.

METAS

Me gustaría saber rápidamente cuándo un cambio en Desarrollo rompe una construcción. Si nos enteramos después de los hechos, no es gran cosa. Debido a que ocurren muchos check-ins a lo largo del día, no queremos esperar a que termine la construcción, por lo que debe ser asincrónico.

Con nuestra sucursal Principal, me gustaría asegurarme de que cada vez que se produzca una fusión, nos aseguremos de que no se rompa la construcción. Quiero retroalimentación inmediata sobre esto. El tiempo de espera es bueno, ya que no nos fusionaremos con Main a menudo.

CONFIGURACIÓN ACTUAL

Mi solución está bajo una carpeta llamada Main. Hice una rama de eso llamado Desarrollo. El espacio de trabajo en el que estoy trabajando está vinculado al nivel superior, que incluye las ramas Principal y de Desarrollo. Intenté ajustar mi espacio de trabajo para solo apuntar a Desarrollo, en caso de que ese fuera el problema. Eso no pareció solucionar mi problema, así que lo configuré como lo tenía originalmente, con Main y Development.

Dentro de las definiciones de compilación del espacio de trabajo, tengo dos definiciones definidas: una para la rama Principal y otra para Desarrollo.

La primera definición es para construir la rama Principal. Tiene un disparador de Check-In controlado y puntos de "Elementos para construir" en el archivo de solución dentro de Main.

La segunda definición es para construir la solución en la rama Desarrollo. Tiene un desencadenante de Rolling Builds y puntos "Elementos para construir" para el archivo de solución en Desarrollo.

RESULTADO

Actualmente, cuando se realiza un cambio en Desarrollo y se realiza un check-in, se activa el check-in cerrado en Main. Esto no solo causa confusión, sino que también ralentiza nuestro proceso general.

PRÓXIMO PASO

He consultado algunas de las guías TFS sobre ramificación, uso general de TFS, etc. Lamentablemente, aún no he encontrado una solución a mi problema. Si ya te has encontrado con este problema, te agradecería cualquier sugerencia que puedas dar.


No estoy 100% seguro en este momento, pero la compilación debe desencadenarse mediante check-ins en la parte del árbol de fuentes que está cubierta por el espacio de trabajo de definición de compilación.

Por lo tanto, eche un vistazo a la definición de construcción y vea qué parte del árbol fuente obtiene cada definición de construcción. Su compilación CI solo debe obtener la rama Dev, la compilación cerrada solo debe obtener la rama Principal.