Las mejores prácticas para fusionarse y probarse, ¿deberíamos probar más?

git version 1.8.1.4 gcc (GCC) 4.7.2 

Hola,

Utilizo git como mi repository y cada vez que hay una nueva característica que se debe agregar o un error que debe corregirse. Creé una nueva twig de la más estable, y procedo a agregar una nueva característica o corregir el error. Normalmente, puedo estar trabajando en muchas funciones nuevas y correcciones de errores al mismo time. Entonces podría tener muchas twigs git.

Esto crea conflictos con los evaluadores, ya que no quieren probar las nuevas funciones o las correcciones de errores. Lo que les gustaría que hiciera es fusionar todo junto una vez que los haya terminado, en la twig estable y luego prueben todo junto de una vez. Esto es bueno para los evaluadores, ya que solo testingn una vez.

Sin embargo, lo que me gustaría que hicieran:

 1) Test the new feature or bug fix on that branch. 2) Once it has passed I will merge it to the stable branch. 3) Once is has been merged into the stable branch test it again to make sure it still works . 

Esto significa que el probador tiene que probar más y no les gusta hacer eso.

El problema es que fusionar todo junto antes de probarlo puede crear más errores. Como voy a fusionar una twig no probada en una estable. Y si estoy fusionando algunas twigs en una estable, esto puede causar que el establo tenga más errores.

Preguntas:

 1) I am just wondering is my concept correct or are the testers correct? 2) Is there any offical or standard document that I can use to show them that everything should be tested first before merging? 

Muchas gracias por las sugerencias,

Realmente no hay un absoluto acierto o error en ninguno de los arguments. Personalmente, me gustaría tomar una position intermedia (y he hecho esto en otros lugares con requisitos similares para las testings). Yo ramificaría la twig más estable en una twig de tema (features_and_fixes, o algo similar igualmente inteligente). Separe de esa twig para cada característica o error nuevo individual. Esto tiene un beneficio que puede no parecer claro al principio. Se está derivando de una base común para todas sus características y soluciones individuales. Eso debería hacer que los cambios de fusión sean mucho, mucho más fáciles.

Una vez que haya probado cada característica individual o corrección (ya que supongo que sus probadores son realmente validadores y que testing su propio código a background), puede volver a fusionarse con la twig de tema común. Pruebe los cambios otra vez una vez que se fusionen cada característica o corrección nueva, solucionando los errores relacionados con la fusión a medida que los encuentre.

Una vez que todo esté bien, puedes unir todo el smash en la twig estable original. si la fusión causa problemas, una confirmación lo pone de nuevo donde comenzó. Eso significará un poco más de testing para usted (ya que tendrá que probar su propio código dos veces), pero también podrá fusionar casi cualquier cantidad de cambios de forma rápida y segura. Usted es uno de los revertidos para deshacer cualquier caos causado por una gran cantidad de cambios. Así es como lo haría …