He notado algo últimamente mirando algunos proyectos populares en GitHub, que no hay develop
sucursal. Y, de hecho, la guía GitHub Flow tampoco lo menciona. Según tengo entendido, master
siempre debe ser totalmente estable y reflejar la producción. Si los desarrolladores están trabajando en ramas de características y luego las fusionan master
cuando están listas, eso significa que hay un período de tiempo en el que las características / arreglos se fusionan master
y la master
rama es realmente más nueva que la producción.
¿No tendría más sentido que el equipo cree ramificaciones de características / arreglos develop
, se fusione con eso y luego, cuando la próxima versión esté totalmente lista para su lanzamiento, develop
se fusione master
y se cree una etiqueta? Imagínese si las personas se están fusionando directamente master
, y se informa un error en la producción que se vuelve difícil de solucionar porque la master
base de código de la rama ha cambiado significativamente. Luego, los desarrolladores solo tienen que decirle al usuario que espere hasta la próxima versión para ver el problema resuelto.
EDITAR: Esta pregunta es diferente a "ramificarse o no ramificarse". Se dirige específicamente a las personas que se alejan del uso de la rama de desarrollo y las razones que la rodean, ya que se promocionó como la mejor práctica durante mucho tiempo.