Modelo de ramificación basado en tareas de Github

En los últimos dos días estamos tratando de encontrar un model github adecuado que pueda satisfacer todas nuestras necesidades. Los siguientes son los requisitos.

1) la twig principal se sincronizará con en vivo.

2) beta se sincronizará con el sitio dev.

3) tenemos 5 desarrolladores trabajando en el mismo proyecto y queremos adoptar un sistema de ramificación basado en tareas.

4) tarea que puede ser urgente solo un cambio de text que también llevará unos minutos o un mes.

5) después de completar la tarea, queremos que los desarrolladores envíen código solo a sus twigs basadas en tareas y TL revisará el código antes de fusionarlo en beta o maestro.

Estoy investigando mucho sobre eso, pero no obtuve ningún model que cumpla con nuestro propósito. Según nuestros requisitos desarrollamos el siguiente model, pero creo que tendrá muchos problemas.

enter image description here

En nuestro enfoque

1) la primera beta y el maestro están sincronizados.

2) crear twigs basadas en tareas desde beta. decir tarea1, tarea2, tarea3, etc.

3) el desarrollador tomará clon de task1 y comenzará a trabajar en él. Después de completarlo empujará a la twig task1 en github. TL revisará el código y fusionará el código a beta. QA hará las testings allí y, si va bien, TL fusionará el código en el maestro.

pero podemos enfrentar los siguientes problemas:

1) Si task2 es demasiado largo y después de que se haya fusionado el código de finalización en la twig beta y una tarea urgente task3 viene que es hotfix. Cuando crearé una nueva twig task3 desde beta. Entonces también tendrá un código de tarea2 que aún no está completo.

Por favor sugiere la mejor solución.

El model que he utilizado con éxito en dos empresas, y que parece ser muy popular, es git flow: http://nvie.com/posts/a-successful-git-branching-model/