GitFlow en Github
G. Mizael Mtz Hdz
SOFTWARE ENGINEER
AGENDA
● INTRODUCCIÓN
○ ¿Qué es Git?
○ ¿Qué es Github?
○ Algunos comandos Git
○ Gitflow
● CREAR REPOSITORIO
○ Crear repositorio en Github
● PRÁCTICA
○ Requisitos
○ Tabla de cambios
○ Cambio #1 - feature/login-con-facebook
○ Cambio #2 - feature/exportar-reporte-drive
○ Cambio #3 - hotfix/login-linkedin
○ Cambio #4 - release/v1.2.0
INTRODUCCIÓN
INTRODUCCIÓN
¿Qué es Git?
● Software de control de versiones
● Permite mantener un histórico de las distintas versiones de un desarrollo
INTRODUCCIÓN
¿Qué es Github?
● Servicio web (servidor) basado en GIT.
● Servidor GIT
● Origin
INTRODUCCIÓN
Algunos comandos Git
● git init
● git clone
● git add
● git commit
● git push
● git branch
● git tag
● git pull
● touch
INTRODUCCIÓN
Gitflow
● Flujo de trabajo basado en Git
● Permite el trabajo en equipo (conflictos en pull request)
● Ideal en metodologías ágiles
● Modelo estricto de ramificación
● Ramas clave: main y develop
RAMAS
● main
● develop
_________________
● feature/
● bug/
● support/
● release/
● hotfix/
INTRODUCCIÓN
Gitflow
CREAR REPOSITORIO
CREAR REPOSITORIO
Crear repositorio en github
● https://github.com/
● Proyecto “GitFlow en Github”
● Agregar README.md
● git clone git@github.com:gmizaelmtzhdz/GitFlow-en-Github.git
PRÁCTICA
PRÁCTICA
Requisitos
● Editor: Visual Studio Code
● Extensión: Git Graph
PRÁCTICA
Tabla de cambios
ID DESCRIPCIÓN CORTA RAMA DE TRABAJO RAMA ORIGEN RAMA DESTINO
Cambio #1 Implementar inicio de
sesión con Facebook
feature/login-con-facebook develop develop
Cambio #2 Exportar reporte de
usuarios a Google Drive
feature/exportar-reporte-drive develop develop
Cambio #3 Error al iniciar sesión con
Linkedin (v1.1.0)
hotfix/login-linkedin main main y develop
Cambio #4 liberar versión v1.2.0 release/v1.2.0 develop main y develop
PRÁCTICA
Cambio #1 - feature/login-con-facebook
● git checkout -b develop | git push -u origin develop | revisar git graph
● git checkout -b feature/login-con-facebook
● touch login-con-facebook.txt
● git add login-con-facebook.txt
● git commit -m "Se implemento el inicio de sesion con Facebook"
● git push -u origin feature/login-con-facebook
PULL REQUEST
● Repositorio > Pull Requests > New pull request
○ base: develop
○ compare: feature/login-con-facebook
PRÁCTICA
Cambio #2 - feature/exportar-reporte-drive
● git checkout develop | git pull origin develop | revisar git graph
● git checkout -b feature/exportar-reporte-drive
● touch exportar-reporte-drive.txt
● git add exportar-reporte-drive.txt
● git commit -m "Soporte para exportar reportes de usuarios a Google Drive"
● git push -u origin feature/exportar-reporte-drive
PULL REQUEST
● Repositorio > Pull Requests > New pull request
○ base: develop
○ compare: feature/exportar-reporte-drive
PRÁCTICA
Cambio #3 - hotfix/login-linkedin
● git checkout main | git pull origin main | revisar git graph
● git checkout -b hotfix/login-linkedin
● touch login-linkedin.txt
● git add login-linkedin.txt
● git commit -m "Se soluciono el error al iniciar sesión con Linkedin"
● git push -u origin hotfix/login-linkedin
PULL REQUEST
● Repositorio > Pull Requests > New pull request
○ base: main
○ compare: hotfix/login-linkedin
● En local
● git checkout main | git pull origin main
● git tag -a v1.1.0 -m "version 1.1.0"
● git push -u origin v1.1.0
● Pull request a develop
○ base: develop
○ compare: main
● git checkout develop | git pull origin develop
PRÁCTICA
Cambio #4 - release/v1.2.0
● git checkout develop | git pull origin develop | revisar git graph
● git checkout -b release/v1.2.0
● touch ajustes-release-v1-2-0.txt
● git add ajustes-release-v1-2-0.txt
● git commit -m "último ajuste"
● git push -u origin release/v1.2.0
PULL REQUEST
● Menú > Pull Requests > New pull request
○ base: main
○ compare: release/v1.2.0
● En local
● git checkout main | git pull origin main
● git tag -a v1.2.0 -m "version 1.2.0"
● git push -u origin v1.2.0
● Pull request a develop
○ base: develop
○ compare: main
● git checkout develop | git pull origin develop
Play List: https://www.youtube.com/playlist?list=PLpiNp4PTAhF7tTwyniUUcP-QTwVyDCO4j

Git flow en github

  • 1.
    GitFlow en Github G.Mizael Mtz Hdz SOFTWARE ENGINEER
  • 2.
    AGENDA ● INTRODUCCIÓN ○ ¿Quées Git? ○ ¿Qué es Github? ○ Algunos comandos Git ○ Gitflow ● CREAR REPOSITORIO ○ Crear repositorio en Github ● PRÁCTICA ○ Requisitos ○ Tabla de cambios ○ Cambio #1 - feature/login-con-facebook ○ Cambio #2 - feature/exportar-reporte-drive ○ Cambio #3 - hotfix/login-linkedin ○ Cambio #4 - release/v1.2.0
  • 3.
  • 4.
    INTRODUCCIÓN ¿Qué es Git? ●Software de control de versiones ● Permite mantener un histórico de las distintas versiones de un desarrollo
  • 5.
    INTRODUCCIÓN ¿Qué es Github? ●Servicio web (servidor) basado en GIT. ● Servidor GIT ● Origin
  • 6.
    INTRODUCCIÓN Algunos comandos Git ●git init ● git clone ● git add ● git commit ● git push ● git branch ● git tag ● git pull ● touch
  • 7.
    INTRODUCCIÓN Gitflow ● Flujo detrabajo basado en Git ● Permite el trabajo en equipo (conflictos en pull request) ● Ideal en metodologías ágiles ● Modelo estricto de ramificación ● Ramas clave: main y develop RAMAS ● main ● develop _________________ ● feature/ ● bug/ ● support/ ● release/ ● hotfix/
  • 8.
  • 9.
  • 10.
    CREAR REPOSITORIO Crear repositorioen github ● https://github.com/ ● Proyecto “GitFlow en Github” ● Agregar README.md ● git clone git@github.com:gmizaelmtzhdz/GitFlow-en-Github.git
  • 11.
  • 12.
    PRÁCTICA Requisitos ● Editor: VisualStudio Code ● Extensión: Git Graph
  • 13.
    PRÁCTICA Tabla de cambios IDDESCRIPCIÓN CORTA RAMA DE TRABAJO RAMA ORIGEN RAMA DESTINO Cambio #1 Implementar inicio de sesión con Facebook feature/login-con-facebook develop develop Cambio #2 Exportar reporte de usuarios a Google Drive feature/exportar-reporte-drive develop develop Cambio #3 Error al iniciar sesión con Linkedin (v1.1.0) hotfix/login-linkedin main main y develop Cambio #4 liberar versión v1.2.0 release/v1.2.0 develop main y develop
  • 14.
    PRÁCTICA Cambio #1 -feature/login-con-facebook ● git checkout -b develop | git push -u origin develop | revisar git graph ● git checkout -b feature/login-con-facebook ● touch login-con-facebook.txt ● git add login-con-facebook.txt ● git commit -m "Se implemento el inicio de sesion con Facebook" ● git push -u origin feature/login-con-facebook PULL REQUEST ● Repositorio > Pull Requests > New pull request ○ base: develop ○ compare: feature/login-con-facebook
  • 15.
    PRÁCTICA Cambio #2 -feature/exportar-reporte-drive ● git checkout develop | git pull origin develop | revisar git graph ● git checkout -b feature/exportar-reporte-drive ● touch exportar-reporte-drive.txt ● git add exportar-reporte-drive.txt ● git commit -m "Soporte para exportar reportes de usuarios a Google Drive" ● git push -u origin feature/exportar-reporte-drive PULL REQUEST ● Repositorio > Pull Requests > New pull request ○ base: develop ○ compare: feature/exportar-reporte-drive
  • 16.
    PRÁCTICA Cambio #3 -hotfix/login-linkedin ● git checkout main | git pull origin main | revisar git graph ● git checkout -b hotfix/login-linkedin ● touch login-linkedin.txt ● git add login-linkedin.txt ● git commit -m "Se soluciono el error al iniciar sesión con Linkedin" ● git push -u origin hotfix/login-linkedin PULL REQUEST ● Repositorio > Pull Requests > New pull request ○ base: main ○ compare: hotfix/login-linkedin ● En local ● git checkout main | git pull origin main ● git tag -a v1.1.0 -m "version 1.1.0" ● git push -u origin v1.1.0 ● Pull request a develop ○ base: develop ○ compare: main ● git checkout develop | git pull origin develop
  • 17.
    PRÁCTICA Cambio #4 -release/v1.2.0 ● git checkout develop | git pull origin develop | revisar git graph ● git checkout -b release/v1.2.0 ● touch ajustes-release-v1-2-0.txt ● git add ajustes-release-v1-2-0.txt ● git commit -m "último ajuste" ● git push -u origin release/v1.2.0 PULL REQUEST ● Menú > Pull Requests > New pull request ○ base: main ○ compare: release/v1.2.0 ● En local ● git checkout main | git pull origin main ● git tag -a v1.2.0 -m "version 1.2.0" ● git push -u origin v1.2.0 ● Pull request a develop ○ base: develop ○ compare: main ● git checkout develop | git pull origin develop
  • 18.