Skip to content

Proyecto de sistema de boletería usando el flujo de trabajo de Git Flow.

Notifications You must be signed in to change notification settings

victand98/boleteria

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

82 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Flujo de trabajo Git

Para la creación y desarrollo de la presente práctica se ha usado Git Flow.
Primeramente se debe crear un repositorio remoto en cualquier alojador de proyecto Git.

Empezando proyecto

Los comandos de Git Flow que se usaron, son los siguientes:
Para iniciar el el repositorio git se usa el siguiente comando:
git init
git init
Para la utilización del flujo de trabajo Git Flow se usa el siguiente comando:
git flow init
Agregar -d para que cree todas las ramas por defecto, sin necesidad de aceptar línea a línea.
git flow init
Se realiza un commit de la configuración inicial del proyecto.
commit inical
Realizar conexión entre repositorio local y repositorio remoto, para que los cambios puedan ser accedidos por todos los colaboradores.
remoto
Se envía el commit de la configuración inical al repositorio remoto, ejecutando:
git push orogin develop
push

Feature

Ahora ya puede comenzar a crear y usar las ramas feature.
git flow feature start nombre para crear la rama.
Terminados los cambios, se realiza una publicación de los cambios usando git push y en caso de no ejecutarse correctamente se debe usar git flow feature publish nombre que, básicamente, sirve para publicar en repositorio remoto.
Para finalizar la rama basta con ejecutar git flow feature finish nombre, con este comando lo que internamente realiza para git son las siguientes instrucciones: git checkout develop
git merge --no-ff feature/nombre
git checkout -d feature/nombre
Esto consiste en enviar los cambios a develop y desechar la rama, dado que su vida útil ha terminado. feature

Release

Rama para empaquetar develop y enviarla a master
Una vez se haya completado una versión estable, se subirá una copia a master Para crear una rama release se debe ejecutar git flow release start numeroVersion
release
En este punto se revisa si se necesita realizar ajustes antes de ser enviado a fase de producción. Seguido, se puede finalizar usando got flow release finish numeroVersion, automáticamente apareceran 3 ventanas que se deben completar (si se desea saber mas visitar Git Flow).
En la primer ventana, se agrega el mensaje del merge a la rama master
r1 La siguiente ventana es para agregar el mensaje para la etiqueta. r2 La última ventana, es para el mensaje del merge que realiza con develop r3 Completado el proceso, nos arroja un resultado como el que se ve a continuación: rf
En lugar de esta línea, si no usaramos git flow, deberiamoms ejecutar:
git checkout master
Subir todos los cambios a master git merge --no-ff release/numeroVersion
Crear etiqueta git tag -a numeroVersion
git checkout develop
Realizar merge en develop git merge --no-ff release/numeroVersion
Con esto ya se debe eliminar la rama git branch -d release/numeroVersion.

Para concluir el proceso de release.
Subir estos cambios al repositorio remoto:
git pull origin develop
Ubicarse en master git checkout master y realizar un git pull --alow-unrelated-histories git pull
Las etiquetas deben ser publicadas usando git push origin --tags tags
En el repositorio remoto, aparecen las versiones estables que se hayan agregado, listas para ser descargadas. Estan identificadas con sus respectivos tags releases

Hotfix

Esta rama se utiliza cuando se presentan bugs en la fase de producción y deben ser corregidos.
Para inicializarla, basta con ejecutar: git flow hotfix start numeroSubversion (numeroSubversion será como etiquete a la nueva versión corregida del proyecto).
start hotfix
Una vez terminada la corrección se termina la rama insertando la siguiente instrucción: git flow hotfix finish numeroSubversion con esto aparece una ventana donde se agrega un mensaje para referenciar etiqueta.
finish
La siguiente ventana que aparece, realiza un merge a develop.
merge
El resultado terminado esto, deberá verse similar a los que se presenta a continuación.
finish
Para publicarlas a repositorio remoto se repite el proceso aplicada a la rama release ejecutando:
git push origin develop
git push origin master
git push origin --tags
tags
En el repositorio remoto se verá de la siguiente manera.
rep

Flujo de trabajo GitFlow

Desde la consola se optione un árbol de trabajo a partir de git log que nos muestra todos los cambios realizados sobre el repositorio, pero para que aparezca un poco más ordenado se ejecuta git log --all --decorate --oneline --graph
git log
Usando un software administrador de git, en este caso, GitKraken, es así como se puede visualizar el flujo de trabajo
flujo git
flujo git
flujo git

Diferencias entre merge y rebase

Estas instrucciones sirven para traer los commits de una rama a otra.

Merge Rebase
Deja el árbol de cambios con sus respectivas ramas Unifica las ramas que se van a combinar dejando un árbol de cambios lineal
Cuando queremos unificar los cambios, es necesario realizar un commit más, el cual puede llegar a ser hasta innecesario No tiene la necesidad de hacer un nuevo commit
No pierde el historial de los commits Si pierde el historial de los commit, lo cual puede llegar a ser una desventaja
Mantiene los commits por separado Monta los commits encima de la otra rama, sin importar la cronología

About

Proyecto de sistema de boletería usando el flujo de trabajo de Git Flow.

Resources

Stars

Watchers

Forks

Packages

No packages published