Upgrade to Pro — share decks privately, control downloads, hide ads and more …

A [git] workflow

Sergio Gil
September 30, 2011

A [git] workflow

Slides from my talk at Madrid Ruby users group about how to make git support your kanban development workflow.

Sergio Gil

September 30, 2011
Tweet

More Decks by Sergio Gil

Other Decks in Programming

Transcript

  1. DISCLAIMER I Esto va más de workflow que de git.

    Aceptamos mercurial como animal de compañía
  2. Nuestros productos son complejos Nos encanta el TDD Nos encanta

    el feedback temprano Siempre probamos en un entorno de staging
  3. Feature A hoy Feature A + B en un mes

    Feature A hoy + Feature B en un mes
  4. Feature A Task 1/3 Feature B Task 1/2 Feature A

    Task 2/3 Feature B Task 2/2 master
  5. 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
  6. 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 master
  7. Si mientras esperamos que A esté lista empezamos C, ¡el

    problema puede durar para siempre! Problema del despliegue retrasado que retrasa el despliegue o Espiral de mierda
  8. master feat_a feat_b ➜ staging FAIL ➜ staging OK ➜

    producción ¡NO! la feature A está rota
  9. stable feat_a feat_b ➜ staging ➜ staging OK ➜ producción

    ➜ producción master FAIL ➜ staging OK feat_c
  10. BONUS POINTS & PRO TIPS recuerda publicar topic branches taguea

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

    tus releases rebasa tus ramas privadas sobre stable nunca rebases o enmiendes commits publicados
  12. 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
  13. 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