Actualmente nos encontramos en la siguiente situación, en la que se ha bifurcado una rama de características para una rama de subfunciones (por ejemplo, trabajando en cosas de backend y frontend para la misma característica):
o
|
o development
|\
| o feature-a
| |
| o
| |\
| | o feature-a-sub
| | |
| | |
| \
| o merged feature-a into feature-a-sub
| /
o feature-a-sub merged into development
| |
| o feature-a with future work on it
|
o development
Un desarrollador fusionó primero la función-a en su rama de función-a-sub para estar al día, y luego fusionó su función-a-sub en el desarrollo. Mientras que la característica inicial-una rama todavía existe, y aún no está terminada.
En mi punto de vista, esto genera el problema de que la rama característica-a ahora queda obsoleta, ya que todos los cambios se fusionan en característica-a-sub y luego en desarrollo. Además, el trabajo ha continuado en la característica a, lo que conduce a futuros conflictos de fusión y mucho trabajo manual.
¿Dónde dimos el giro equivocado y cómo sería un flujo de trabajo adecuado con menos problemas?