Mi compañía está usando Git y está usando un esquema de ramificación peculiar: el trabajo se realiza en master y las ramas están reservadas para lanzamientos. Esto funciona bien, siempre que todo el trabajo realizado en una iteración llegue a la rama, pero si surge un problema de producción crítico, tenemos que asegurarnos de que el trabajo de alguna manera llegue a ambas ramas.
Últimamente, nos hemos estado divirtiendo con esas ramas. Ha sido un dolor de cabeza administrativo, garantizar que todo el trabajo llegue a cada rama, y algunos errores que se han corregido en una rama no lo convierten en maestro hasta que alguien lo señala, lo cual es preocupante.
Me encontré con Git Flow hace un tiempo, y siento que sería una solución a nuestro problema: el código no se filtra hasta el lanzamiento o hasta el final. El único inconveniente es que mi líder declaró que este tipo de desarrollo fue un antipatrón: se desarrolló furiosamente durante dos semanas y luego pasó tres para resolver los conflictos de fusión.
No estoy completamente seguro de estar de acuerdo, y desde que lo mencioné, el trabajo se ha reanudado normalmente. Solo recientemente hemos tenido algunos puntos importantes de dolor con esto.
Me gustaría saber: ¿por qué este tipo de esquema de desarrollo se considera un antipatrón? ¿ Es realmente un antipatrón?
Respuestas:
Se refiere principalmente al lado de las ramas de características del modelo. Las ramas de características se declararon antipatrón hace mucho tiempo cuando las ramas duraron meses y los sistemas de control de versiones no pudieron fusionarse para salvarles la vida. Ramas de características que duran una semana o dos tienen mucho menos problemas, especialmente si usted está continuamente la fusión de
develop
en la rama función durante ese tiempo. Todavía no se recomienda nada mucho más que eso.Incluso si no usa el lado de la rama de características del flujo de git, las otras partes son útiles para garantizar que obtenga fusiones limpias y sus cambios se propaguen en la dirección correcta.
fuente
La fusión es algo gracioso: cuanto menos se haga, más difícil será, cuanto más difícil sea, más personas le temerán, con menos frecuencia lo harán.
La solución es no permitir que las ramas se desvíen demasiado o no usar ramas.
Si la gente entiende esto, probablemente no tendrá muchos problemas con la fusión, de lo contrario, puede que las sucursales no sean una buena idea sin cierta educación.
fuente