Podría beneficiarse del flujo de trabajo que Scott Chacon describe en Pro Git . En este flujo de trabajo, tiene dos ramas que siempre existen, master y desarrollo .
master representa la versión más estable de su proyecto y solo se implementa en producción desde esta rama.
desarrollar contiene cambios que están en progreso y que no necesariamente están listos para la producción.
Desde la rama de desarrollo , puede crear ramas de temas para trabajar en arreglos y características individuales. Una vez que su función / arreglo está listo para funcionar, lo fusiona en desarrollo , en ese momento puede probar cómo interactúa con otras ramas temáticas en las que sus compañeros de trabajo se han fusionado. Una vez que el desarrollo esté en un estado estable, combínelo en maestro . Siempre debe ser seguro implementarlo en producción desde el maestro .
Scott describe estas ramas de larga duración como "silos" de código, donde el código en una rama menos estable eventualmente se "graduará" a una considerada más estable después de las pruebas y la aprobación general de su equipo.
Paso a paso, su flujo de trabajo bajo este modelo podría verse así:
- Necesitas arreglar un error.
- Cree una rama llamada myfix que se base en la rama de desarrollo .
- Trabaje en el error en esta rama de tema hasta que se solucione.
- Combinar myfix en desarrollar . Ejecute pruebas.
- Usted descubre que su arreglo entra en conflicto con otro hisfix de rama de tema en el que su compañero de trabajo se fusionó para desarrollar mientras trabajaba en su arreglo.
- Realice más cambios en la rama myfix para lidiar con estos conflictos.
- Combinar myfix en desarrollar y ejecutar pruebas de nuevo.
- Todo funciona bien Fusionarse para convertirse en maestro .
- Implemente en producción desde el maestro en cualquier momento, porque sabe que es estable.
Para obtener más detalles sobre este flujo de trabajo, consulte el capítulo Flujos de trabajo de ramificación en Pro Git.