Cómo incorporar correcciones de errores

Tengo la siguiente situación, en la que no estoy seguro de cuál es el mejor flujo de trabajo. Definitivamente necesito algunos consejos:

Tenemos una:
– un repository origRepo (branches: master ) y un
– una horquilla de fork (twigs: master , twig remota origRepo/master )

Podemos suponer que la twig master siempre se actualiza, en el fork repository por

 git fetch origRepo/master git checkout master git merge origRepo/master 

Algunos usuarios trabajaron en el repository de fork e hicieron una test ramificación. Qué flujo de trabajo debe aplicar el usuario en los siguientes escenarios:

Escenario 1:
Él está trabajando y solo nota un error en el file A que debería actualizarse inmediatamente en el master .

  1. ¿Debería comprometer la corrección de errores del file A en una confirmación separada "BUGFIX" en la test ramificación? ¿¿Cómo proceder?? La test fusión con el master no funciona, ya que todavía hay trabajo sin terminar.
  2. ¿Debería pull master ? para get la versión más reciente de maestro, luego verificar una bugfix de bugfix twig desde el master , confirmar el file fijo A allí y luego combinar la bugfix con el master y la test para get los cambios en ambas twigs.

Tengo problemas para entender cómo obtiene el file modificado A en la test ramificación en la twig de bugfix para poder confirmar. Quiero decir, la edición del file A nuevamente en la corrección de bugfix twig es networkingundante.

Escenario 2: se había comprometido varias veces y su directory de trabajo ahora está realmente intrincado con el trabajo sin terminar y su directory de trabajo está limpio ( git status ). Ahora se da count de que tiene varios files actualizados que deberían actualizarse también en la twig master , ¿cómo lo hace?

El último problema que tengo es: ¿cómo debería la twig de test si está list para combinarse, fusionarse en master si solo se desean fusionar files selectivos? Podemos hacer esto con:

 git checkout master git merge --no-ff --no-commit test git add -i # to interactively stage and unstage files which should not be merged into master again, because the might have been changed only for testing purposes. git commit -m "merging test" 

Realmente aprecio cualquier comentario sobre algunos consejos sobre estos escenarios. Estoy bastante perdido acerca de qué hacer correctamente en estos momentos? ¿Cosecha de la cereza? Fusionando? En su mayoría no quiero volver a establecer la rebase ya que esta herramienta no me gusta tanto, prefiero una merge , que es más visual para mí.