SlideShare a Scribd company logo
1 of 101
Download to read offline
A [git] workflow
   Continuous Delivery that doesn't hurt


madrid-rb                                  Sergio Gil
@madridrb                                  @porras
DISCLAIMER I




Esto va más de workflow que de
 git. Aceptamos mercurial
   como animal de compañía
DISCLAIMER II + RETO




Intentar no citar explicitamente un
 comando de git en toda la charla
http://gitimmersion.com/
yo / nosotros
Hacemos productos
Hacemos productos
y los productos duran para siempre
Nuestros productos son complejos
Nuestros productos son complejos


      Nos encanta el TDD
Nuestros productos son complejos


      Nos encanta el TDD
Nos encanta el feedback temprano
Nuestros productos son complejos


           Nos encanta el TDD
    Nos encanta el feedback temprano
Siempre probamos en un entorno de staging
“Máquina de
convertir café
  en código”
“Máquina de
convertir café   hamburguesas
  en código”
“Máquina de
convertir café   hamburguesas
  en código”
     features
“Máquina de
convertir café   hamburguesas
  en código”
     features
      útiles
“Máquina de
convertir café     hamburguesas
  en código”
      features
       útiles
   en producción
“Máquina de
                  convertir café     hamburguesas
                    en código”
                        features
                         útiles
                     en producción
idea implícita:
   tiempo
U
    Feature A en una semana




                        Feature A en un mes




                              T
h oy
        eA
      ur
   at
Fe
                                            es
                                        m
                                    1
                               en
                          eA
                       tur
                    Fea
Feature A
   hoy
Feature A   Feature A + B
   hoy        en un mes
Feature A   Feature A + B Feature A hoy +
   hoy        en un mes Feature B en un mes
KAN
BAN
WIP (≤ X)
master
master

         Feature A Task 1/3
master

         Feature A Task 1/3


         Feature B Task 1/2
master

         Feature A Task 1/3


         Feature B Task 1/2


         Feature A Task 2/3
master

         Feature A Task 1/3


         Feature B Task 1/2


         Feature A Task 2/3


         Feature B Task 2/2
master

         Feature A Task 1/3


         Feature B Task 1/2


         Feature A Task 2/3


         Feature B Task 2/2
                              B ya está, ¡a desplegar!
master

         Feature A Task 1/3


         Feature B Task 1/2


         Feature A Task 2/3


         Feature B Task 2/2
                              B ya está, ¡a desplegar!

                                          ¡NEGATIVO, Señor!
                                              A no está lista
Problema del despliegue retrasado
    que retrasa el despliegue
Problema del despliegue retrasado
    que retrasa el despliegue
                o
Problema del despliegue retrasado
    que retrasa el despliegue
                o
       Espiral de mierda
Problema del despliegue retrasado
    que retrasa el despliegue
                o
       Espiral de mierda




Si mientras esperamos que A esté
 lista empezamos C, ¡el problema
     puede durar para siempre!
¡OK, usemos ramas!
master
master


         feat_a
master


feat_b            feat_a
master


feat_b            feat_a
master


feat_b            feat_a
master


feat_b            feat_a




                           ➜ staging
master


feat_b            feat_a




                           ➜ staging   OK
master


feat_b            feat_a




                           ➜ staging   OK   ➜ producción
master


feat_b            feat_a




                           ➜ staging   OK   ➜ producción
master


feat_b            feat_a




                           ➜ staging   OK   ➜ producción
master


feat_b            feat_a




                           ➜ staging   OK   ➜ producción


                           ➜ staging
master


feat_b            feat_a




                           ➜ staging   OK   ➜ producción


                           ➜ staging   OK
master


feat_b            feat_a




                           ➜ staging   OK   ➜ producción


                           ➜ staging   OK   ➜ producción
master
master


         feat_a
master


feat_b            feat_a
master


feat_b            feat_a
master


feat_b            feat_a
master


feat_b            feat_a




                           ➜ staging
master


feat_b            feat_a




                           ➜ staging   FAIL
master


feat_b            feat_a




                           ➜ staging   FAIL
master


feat_b            feat_a




                           ➜ staging   FAIL
master


feat_b            feat_a




                           ➜ staging   FAIL
master


feat_b            feat_a




                           ➜ staging   FAIL


                           ➜ staging
master


feat_b            feat_a




                           ➜ staging   FAIL


                           ➜ staging   OK
master


feat_b            feat_a




                           ➜ staging   FAIL


                           ➜ staging   OK     ➜ producción
master


feat_b            feat_a




                           ➜ staging   FAIL


                           ➜ staging   OK     ➜ producción




                                              ¡NO!
master


feat_b            feat_a




                           ➜ staging   FAIL


                           ➜ staging   OK     ➜ producción




                                              ¡NO!           la feature A
                                                               está rota
master   stable
master   stable


                  feat_a
master            stable


         feat_b            feat_a
master            stable


         feat_b            feat_a
master            stable


         feat_b            feat_a
master            stable


                     feat_b            feat_a




➜ staging
master            stable


                            feat_b            feat_a




FAIL   ➜ staging
master            stable


                            feat_b            feat_a




FAIL   ➜ staging
master            stable


                            feat_b            feat_a




FAIL   ➜ staging
master            stable


                            feat_b            feat_a




FAIL   ➜ staging


       ➜ staging
master            stable


                            feat_b            feat_a




FAIL   ➜ staging


OK     ➜ staging
master            stable


                            feat_b            feat_a




FAIL   ➜ staging


OK     ➜ staging
master                 stable


                                 feat_b            feat_a




FAIL   ➜ staging


OK     ➜ staging
                                     cc ión
                                    u
                                prod
                            ➜
master                  stable


                                 feat_b             feat_a




FAIL   ➜ staging


OK     ➜ staging
                                                             feat_c
                                         ión
                                     ucc
                                p rod
                            ➜
master                  stable


                                 feat_b             feat_a




FAIL   ➜ staging


OK     ➜ staging
                                                             feat_c
                                         ión
                                     ucc
                                p rod
                            ➜
master                  stable


                                 feat_b             feat_a




FAIL   ➜ staging


OK     ➜ staging
                                                             feat_c
                                         ión
                                     ucc
                                p rod
                            ➜
master                  stable


                                 feat_b             feat_a




FAIL   ➜ staging


OK     ➜ staging
                                                             feat_c
                                         ión
                                     ucc
       ➜ staging                p rod
                            ➜
master                  stable


                                 feat_b             feat_a




FAIL   ➜ staging


OK     ➜ staging
                                                             feat_c
                                         ión
                                     ucc
OK     ➜ staging                p rod
                            ➜
master                  stable


                                 feat_b             feat_a




FAIL   ➜ staging


OK     ➜ staging
                                                             feat_c
                                         ión
                                     ucc
OK     ➜ staging                p rod
                            ➜
master                  stable


                                 feat_b             feat_a




FAIL   ➜ staging


OK     ➜ staging
                                                             feat_c
                                         ión
                                     ucc
OK     ➜ staging                p rod
                            ➜

                                      ➜ producción
BONUS POINTS & PRO TIPS
BONUS POINTS & PRO TIPS




recuerda publicar topic branches
BONUS POINTS & PRO TIPS




recuerda publicar topic branches
      taguea tus releases
BONUS POINTS & PRO TIPS




  recuerda publicar topic branches
          taguea tus releases
rebasa tus ramas privadas sobre stable
BONUS POINTS & PRO TIPS




      recuerda publicar topic branches
              taguea tus releases
    rebasa tus ramas privadas sobre stable
nunca rebases o enmiendes commits publicados
BONUS POINTS & PRO TIPS




      recuerda publicar topic branches
              taguea tus releases
    rebasa tus ramas privadas sobre stable
nunca rebases o enmiendes commits publicados
      --no-ff para una historia detallada
BONUS POINTS & PRO TIPS




       recuerda publicar topic branches
              taguea tus releases
    rebasa tus ramas privadas sobre stable
nunca rebases o enmiendes commits publicados
      --no-ff para una historia detallada
   reset: corte por donde tenga que cortar
PROBLEMAS
PROBLEMAS




A veces la integración da trabajo
PROBLEMAS




      A veces la integración da trabajo

Escala mal tanto en horizontal como en vertical
PROBLEMAS




      A veces la integración da trabajo

Escala mal tanto en horizontal como en vertical

                   WIN
gracias


madrid-rb             Sergio Gil
@madridrb             @porras

More Related Content

Recently uploaded

Trabajo de tecnología 10-8 Primer periodo
Trabajo de tecnología 10-8 Primer periodoTrabajo de tecnología 10-8 Primer periodo
Trabajo de tecnología 10-8 Primer periodoAnaRiascos5
 
TALLER TECNOLOGICO SOBRE EL CELULAR. Karol Muñoz.pdf
TALLER TECNOLOGICO SOBRE EL CELULAR. Karol Muñoz.pdfTALLER TECNOLOGICO SOBRE EL CELULAR. Karol Muñoz.pdf
TALLER TECNOLOGICO SOBRE EL CELULAR. Karol Muñoz.pdfkarolalejandra020410
 
TRABAJO TECNOLOGÍA E INFORMATICA TABLAAA
TRABAJO TECNOLOGÍA E INFORMATICA TABLAAATRABAJO TECNOLOGÍA E INFORMATICA TABLAAA
TRABAJO TECNOLOGÍA E INFORMATICA TABLAAASebastinOrdez4
 
LISTA taller tecnología Sofia nava 11-2 año 2024
LISTA taller tecnología Sofia nava 11-2 año 2024LISTA taller tecnología Sofia nava 11-2 año 2024
LISTA taller tecnología Sofia nava 11-2 año 2024SofaNava1
 
La electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfLa electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfcristianrb0324
 
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaYeimys Ch
 
Materiales didácticos de Arelis y maria.
Materiales didácticos de Arelis y maria.Materiales didácticos de Arelis y maria.
Materiales didácticos de Arelis y maria.cabreraarelis37
 
Tecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestríaTecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestríaElizabethLpezSoto
 
Clasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptxClasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptxCarolina Bujaico
 
Green-Tech.pdf (Tecnologia Verde) Tendencias Tecnologicas
Green-Tech.pdf (Tecnologia Verde) Tendencias TecnologicasGreen-Tech.pdf (Tecnologia Verde) Tendencias Tecnologicas
Green-Tech.pdf (Tecnologia Verde) Tendencias TecnologicasDahianaParedes2
 
TALLER DE TECNOLOGIA, PRIMER PERIODO 11-2..docx
TALLER DE TECNOLOGIA, PRIMER PERIODO 11-2..docxTALLER DE TECNOLOGIA, PRIMER PERIODO 11-2..docx
TALLER DE TECNOLOGIA, PRIMER PERIODO 11-2..docxSantiagocortes55
 
JUANITA Y SEBASTIAN TRABAJO TEGNOLOGIA TABLA EXCEL
JUANITA Y SEBASTIAN TRABAJO TEGNOLOGIA TABLA EXCELJUANITA Y SEBASTIAN TRABAJO TEGNOLOGIA TABLA EXCEL
JUANITA Y SEBASTIAN TRABAJO TEGNOLOGIA TABLA EXCELSebastinOrdez4
 
Taller de tecnología año 2024 11-2 sofia nava
Taller de tecnología año 2024  11-2 sofia navaTaller de tecnología año 2024  11-2 sofia nava
Taller de tecnología año 2024 11-2 sofia navaSofaNava1
 
LA ELECTRICIDAD Y LA ELECTRÓNICA TRABAJO EN GRUPO
LA ELECTRICIDAD Y LA ELECTRÓNICA TRABAJO EN GRUPOLA ELECTRICIDAD Y LA ELECTRÓNICA TRABAJO EN GRUPO
LA ELECTRICIDAD Y LA ELECTRÓNICA TRABAJO EN GRUPOv16959670
 
Trabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjskTrabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjskbydaniela5
 
BLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docx
BLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docxBLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docx
BLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docxJuancamiloZuiga4
 
BLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docx
BLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docxBLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docx
BLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docxhellendiaz12
 
tecnologia116.docx TRABAJO COLABORTIVO PRIMNER
tecnologia116.docx TRABAJO COLABORTIVO PRIMNERtecnologia116.docx TRABAJO COLABORTIVO PRIMNER
tecnologia116.docx TRABAJO COLABORTIVO PRIMNERedepmariaordonez
 
Análisis de Artefactos Tecnologicos .docx
Análisis de Artefactos Tecnologicos .docxAnálisis de Artefactos Tecnologicos .docx
Análisis de Artefactos Tecnologicos .docxmajovaru19
 
Trabajo de tecnología primer periodo 2024
Trabajo de tecnología primer periodo 2024Trabajo de tecnología primer periodo 2024
Trabajo de tecnología primer periodo 2024anasofiarodriguezcru
 

Recently uploaded (20)

Trabajo de tecnología 10-8 Primer periodo
Trabajo de tecnología 10-8 Primer periodoTrabajo de tecnología 10-8 Primer periodo
Trabajo de tecnología 10-8 Primer periodo
 
TALLER TECNOLOGICO SOBRE EL CELULAR. Karol Muñoz.pdf
TALLER TECNOLOGICO SOBRE EL CELULAR. Karol Muñoz.pdfTALLER TECNOLOGICO SOBRE EL CELULAR. Karol Muñoz.pdf
TALLER TECNOLOGICO SOBRE EL CELULAR. Karol Muñoz.pdf
 
TRABAJO TECNOLOGÍA E INFORMATICA TABLAAA
TRABAJO TECNOLOGÍA E INFORMATICA TABLAAATRABAJO TECNOLOGÍA E INFORMATICA TABLAAA
TRABAJO TECNOLOGÍA E INFORMATICA TABLAAA
 
LISTA taller tecnología Sofia nava 11-2 año 2024
LISTA taller tecnología Sofia nava 11-2 año 2024LISTA taller tecnología Sofia nava 11-2 año 2024
LISTA taller tecnología Sofia nava 11-2 año 2024
 
La electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfLa electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdf
 
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
 
Materiales didácticos de Arelis y maria.
Materiales didácticos de Arelis y maria.Materiales didácticos de Arelis y maria.
Materiales didácticos de Arelis y maria.
 
Tecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestríaTecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestría
 
Clasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptxClasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptx
 
Green-Tech.pdf (Tecnologia Verde) Tendencias Tecnologicas
Green-Tech.pdf (Tecnologia Verde) Tendencias TecnologicasGreen-Tech.pdf (Tecnologia Verde) Tendencias Tecnologicas
Green-Tech.pdf (Tecnologia Verde) Tendencias Tecnologicas
 
TALLER DE TECNOLOGIA, PRIMER PERIODO 11-2..docx
TALLER DE TECNOLOGIA, PRIMER PERIODO 11-2..docxTALLER DE TECNOLOGIA, PRIMER PERIODO 11-2..docx
TALLER DE TECNOLOGIA, PRIMER PERIODO 11-2..docx
 
JUANITA Y SEBASTIAN TRABAJO TEGNOLOGIA TABLA EXCEL
JUANITA Y SEBASTIAN TRABAJO TEGNOLOGIA TABLA EXCELJUANITA Y SEBASTIAN TRABAJO TEGNOLOGIA TABLA EXCEL
JUANITA Y SEBASTIAN TRABAJO TEGNOLOGIA TABLA EXCEL
 
Taller de tecnología año 2024 11-2 sofia nava
Taller de tecnología año 2024  11-2 sofia navaTaller de tecnología año 2024  11-2 sofia nava
Taller de tecnología año 2024 11-2 sofia nava
 
LA ELECTRICIDAD Y LA ELECTRÓNICA TRABAJO EN GRUPO
LA ELECTRICIDAD Y LA ELECTRÓNICA TRABAJO EN GRUPOLA ELECTRICIDAD Y LA ELECTRÓNICA TRABAJO EN GRUPO
LA ELECTRICIDAD Y LA ELECTRÓNICA TRABAJO EN GRUPO
 
Trabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjskTrabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjsk
 
BLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docx
BLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docxBLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docx
BLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docx
 
BLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docx
BLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docxBLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docx
BLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docx
 
tecnologia116.docx TRABAJO COLABORTIVO PRIMNER
tecnologia116.docx TRABAJO COLABORTIVO PRIMNERtecnologia116.docx TRABAJO COLABORTIVO PRIMNER
tecnologia116.docx TRABAJO COLABORTIVO PRIMNER
 
Análisis de Artefactos Tecnologicos .docx
Análisis de Artefactos Tecnologicos .docxAnálisis de Artefactos Tecnologicos .docx
Análisis de Artefactos Tecnologicos .docx
 
Trabajo de tecnología primer periodo 2024
Trabajo de tecnología primer periodo 2024Trabajo de tecnología primer periodo 2024
Trabajo de tecnología primer periodo 2024
 

A [git] workflow