Upload
igor-laborie
View
468
Download
7
Embed Size (px)
DESCRIPTION
Short Git Flow presentation for ToulouseJUG
Citation preview
Git Flow
Igor LaborieToulouse JUG - 21 Fév. 2013mercredi 20 février 13
Introduction
mercredi 20 février 13
Introduction
• Git et les branches c’est génial
mercredi 20 février 13
Introduction
• Git et les branches c’est génial
• Travail collaboratif => Workflow de branches
mercredi 20 février 13
Introduction
• Git et les branches c’est génial
• Travail collaboratif => Workflow de branches
• «Loi Entropique de l’Informatique»
mercredi 20 février 13
Introduction
• Git et les branches c’est génial
• Travail collaboratif => Workflow de branches
• «Loi Entropique de l’Informatique»
• => ça devient vite chaotique
mercredi 20 février 13
«A Successfull Git Branching Model»
• http://nvie.com/posts/a-successful-git-branching-model
• => git flow
mercredi 20 février 13
4
Time
v0.1
master
develop
hotfixe(s)
release(s)
feature/a
feature/b
mercredi 20 février 13
4
Time
v0.1
master
develop
hotfixe(s)
release(s)
feature/a
feature/b
mercredi 20 février 13
4
Time
v0.1
master
develop
hotfixe(s)
release(s)
feature/a
feature/b
mercredi 20 février 13
4
Time
v0.1
master
develop
hotfixe(s)
release(s)
feature/a
feature/b
mercredi 20 février 13
4
Time
v0.1
master
develop
hotfixe(s)
release(s)
feature/a
feature/b
mercredi 20 février 13
4
Time
v0.1
master
develop
hotfixe(s)
release(s)
feature/a
feature/b
v0.2
mercredi 20 février 13
4
Time
v0.1
master
develop
hotfixe(s)
release(s)
feature/a
feature/b
v0.2
mercredi 20 février 13
4
Time
v0.1
master
develop
hotfixe(s)
release(s)
feature/a
feature/b
v0.2
mercredi 20 février 13
4
Time
v0.1
master
develop
hotfixe(s)
release(s)
feature/a
feature/b
v0.2
mercredi 20 février 13
4
Time
v0.1
master
develop
hotfixe(s)
release(s)
feature/a
feature/b
v0.2
mercredi 20 février 13
4
Time
v0.1
master
develop
hotfixe(s)
release(s)
feature/a
feature/b
v0.2
mercredi 20 février 13
4
Time
v0.1
master
develop
hotfixe(s)
release(s)
feature/a
feature/b
v0.2
mercredi 20 février 13
4
Time
v0.1
master
develop
hotfixe(s)
release(s)
feature/a
feature/b
v0.2
mercredi 20 février 13
4
Time
v0.1
master
develop
hotfixe(s)
release(s)
feature/a
feature/b
v0.2
mercredi 20 février 13
4
Time
v0.1
master
develop
hotfixe(s)
release(s)
feature/a
feature/b
v1.0v0.2
mercredi 20 février 13
4
Time
v0.1
master
develop
hotfixe(s)
release(s)
feature/a
feature/b
v1.0v0.2
mercredi 20 février 13
4
Time
v0.1
master
develop
hotfixe(s)
release(s)
feature/a
feature/b
v1.0v0.2
mercredi 20 février 13
4
Time
v0.1
master
develop
hotfixe(s)
release(s)
feature/a
feature/b
v1.0v0.2
mercredi 20 février 13
4
Time
v0.1
master
develop
hotfixe(s)
release(s)
feature/a
feature/b
v1.0v0.2 v1.1
mercredi 20 février 13
master
• Version que l’on peut mettre en production
• => avec un tag
mercredi 20 février 13
develop
• Développement de la prochaine version
• Nouvelles features
• Parfois appelée: next, pu (proposed update)
mercredi 20 février 13
feature/XXX
• Développement de la feature XXX
• Partent de develop
• Sont mergées dans develop
• Pas forcément visible dans origin
• Parfois appelée : topic
mercredi 20 février 13
release/XXX
• Préparation de la release XXX
• feature freeze
• => MAJ configuration / documentation
• validation / correction des bugs bloquants
• Partent de develop
• Sont mergées dans master et develop
mercredi 20 février 13
hotfix/XXX
• Correction du bug bloquant XXX de la production
• Partent de master
• Sont mergées dans master et develop
mercredi 20 février 13
support/XXX
• Maintenance des vielles versions
mercredi 20 février 13
Démo
mercredi 20 février 13
Bilan
mercredi 20 février 13
Bilan
• Evite l’inflation des branches
mercredi 20 février 13
Bilan
• Evite l’inflation des branches
• Simplification des opérations des branches
mercredi 20 février 13
Bilan
• Evite l’inflation des branches
• Simplification des opérations des branches
• Rend la branche master toujours propre
mercredi 20 février 13
Bilan
• Evite l’inflation des branches
• Simplification des opérations des branches
• Rend la branche master toujours propre
• Peut être activer/désactiver sans abimer le repository
mercredi 20 février 13
Tooling
• CLI: https://github.com/nvie/gitflow
• (OSX) Source Tree
• EGit ...
• Autre ?
mercredi 20 février 13
Links• Blog• http://nvie.com/posts/a-successful-git-branching-
model/• http://jeffkreeftmeijer.com/2010/why-arent-you-
using-git-flow/• http://yakiloo.com/getting-started-git-flow/• GitHub• https://github.com/nvie/gitflow• AVH edition: https://github.com/petervanderdoes/
gitflow• Vidéos• http://vimeo.com/37408017• http://vimeo.com/16018419
mercredi 20 février 13