Manejos de flujo de trabajo - dfgoUniandes/proyecto-final-uniandes-grupo-02 GitHub Wiki

GitFlow

A continuación, se propone un flujo de trabajo base para el desarrollo del proyecto del curso.

Repositorios

Nombre Ubicación (url/directorio) Propósito
Proyecto Final Uniandes - Grupo 02 https://github.com/dfgoUniandes/proyecto-final-uniandes-grupo-02 Utilizar procesos de desarrollo para software móviles.

Ramas

Nombre rama Propósito
Master / Main Esta rama contiene el paquete de funcionalidades entregadas al cliente, coincide con el producto desplegado.
Release Esta rama contiene el paquete de funcionalidades listas para ser entregadas al cliente, aquí­ se pueden realizar ajustes menores a la funcionalidad, pruebas o documentación de código. Esta rama se crea a partir de Master / Main, se integran todos lo features del sprint por medio de lo actions y al realizar un release tiene que hacer push con el comentario "RELEASE:versión" El action de github se encargará de correr las pruebas necesarias y integrar los cambios con Master / Main
develop En esta rama se integran los cambios desarrollados en cada feature. Se realiza a partir de Master / Main y se actualiza cuando se termina algún release.
Features Cada rama feature contiene la implementación de una funcionalidad o historia de usuario. Se crea a partir de Master / Main y debe contener los últimos cambios de Master / Main antes de integrarse a esta, cuando se termine esta rama se puede borrar.
Hotfix Cada hotfix es un arreglo que se presenta en el código del cliente productivo se origina a partir de la rama master, cuando se realiza push se corren las pruebas y se actualiza la rama Master / Main y Release

Flujo

image

Acuerdos de repositorio

Indicar los acuerdos del equipo para uso de los repositorios y ramas. Incluir acciones como creación y clonación de repositorios, actualizaciones e integraciones (mezclas).

Acción Quién Cuando Dónde
Clonar Desarrollador Inicio proyecto Espacio local de trabajo
Crear feature Desarrollador Se va a trabajar en una nueva funcionalidad Espacio local de trabajo
Crear hotfix Desarrollador Se va a corregir una funcionalidad Espacio local de trabajo
Terminar feature Desarrollador Se termina una nueva funcionalidad Repositorio remoto
Terminar hotfix Desarrollador Se corrigió una funcionalidad Repositorio remoto
Terminar release Desarrollador Se terminé el sprint Repositorio remoto
Creación de pruebas unitarias Desarrollador Creación de pruebas unitarias en cada rama creada para la funcionalidad correspondiente. Espacio local de trabajo
Solución de pruebas unitarias Desarrollador Solución de pruebas unitarias en cada rama creada para la funcionalidad correspondiente Espacio local de trabajo
Actualización del código Desarrollador Solo cuando el feature o hotfix este revisado y verificado Espacio local de trabajo
Actualización del repositorio local Desarrollador Una vez verificado y revisado las funcionalidades correspondientes creadas y actualizadas en el repositorio remoto, cada integrante informa al otro de que se ha realizado. Espacio local de trabajo
Actualización del repositorio remoto Desarrollador Al finalizar y verificar las funcionalidades creadas que se encuentren sin errores, se realiza un commit con mensaje claro y según el nombramiento correspondiente y luego de ello al hacer “push” se actualiza el repositorio remoto y en el repositorio remoto se crea un pull request para añadir a la rama develop. Espacio local de trabajo y Repositorio remoto