Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.
GITFLOW – Le plugin
Sommaire
1. Qu’est ce que Gitflow ?
2. Le pattern
1. Branches principales
2. Branches de développement
3. Branches version...
Qu’est ce que Gitflow ?
Gitflow est un plugin de git crée par Atlassian
Son but: Simplifier la gestion des branches
Avanta...
Master : Versions de prods
Develop : Environnement de travail
Deux branches sont conservées en permanence
Le pattern
Branc...
Le pattern
Branches de développement
Nouvelle fonctionnalité
création d’une branche feature
Fonctionnalité terminée
fusion...
Les features n’intéragissent jamais directement
avec la branche master.
Le pattern
Branches de développement
Le pattern
Branches version
En fin de sprint on crée une branche release
Elle contient toutes les features terminées du sp...
Le pattern
Branches version
En fonction du besoin, la plateforme de préproduction
• Est reliée à la feature pour les tests...
Le pattern
Branches de maintenance
Les branches hotfix sont utilisées pour les petits bugs
• Inférieur à 1h de dev
• Urgen...
Démonstration
Initialisation
Je crée un dossier vide appelé test-gitflow, et je lance un Git Bash.
git flow : Liste les co...
git flow init : Initialise mon projet avec l’arborescence de git flow
Le programme va me demander le nom de chaque branche...
Via git branch, on constate que git flow a bien créé les deux branches :
• dev
• master
On est placé automatiquement sur l...
git flow feature start : Crée une nouvelle branche feature
Le programme me demande le nom
Gitflow nous place directement d...
git flow feature finish : Ferme la branche et merge sur dev
Gitflow nous repositionne directement dans la branche dev
et s...
Ici, la branche 1.0 à bien été créé
On est placé directement sur la branche de la release 1.0
git flow release start : Cré...
La release a été fusionnée, puis supprimée.
Un tag 1.0 a été créé sur master.
git flow release finish : Ferme la release e...
• Les fermetures de feature/release ne pushent automatiquement
• Ne pas oublier git push --tags pour
retrouver les tags da...
• SourceTree est une interface graphique pour Git
• Elle inclut nativement le plugin Gitflow
• On y trouve une interface v...
Complément
Interface graphique
Complément
Interface graphique
Le « remisage » est une fonctionnalité native à Git.
Elle permet :
- de stocker des modifications
- de mettre le projet à ...
Les stashs sont comme des commits ordinaires
hors de tout historique et de toute branche
on peut leur appliquer : merge, c...
git stash : Sauvegarde votre copie de travail
Votre répertoire de travail est propre :
Complément
Remisage
git stash list : Voir la liste des stashes avec
Complément
Remisage
git stash apply <nom> : Applique la remise sur la copie de travail
La stash est conservée dans la liste
git stash drop <st...
Si un stash devient trop important,
il est possible d’en faire une branche avec
git stash branch <stash_name>
Défaire l'ef...
Conclusion
Gitflow, c’est donc :
• Un gain de temps
• Une meilleure organisation
• Le respect des standards
• Et encore pl...
Des questions ?
Questions
Prochain SlideShare
Chargement dans…5
×

Gitflow

607 vues

Publié le

Presentation of GitFlow and SourceTree

Publié dans : Technologie
  • Soyez le premier à commenter

Gitflow

  1. 1. GITFLOW – Le plugin
  2. 2. Sommaire 1. Qu’est ce que Gitflow ? 2. Le pattern 1. Branches principales 2. Branches de développement 3. Branches version 4. Branches de maintenance 3. Démonstration 1. Initialisation 2. Commandes principales 4. Complément 1. Remarques importantes 2. Interface graphique 3. Remisage
  3. 3. Qu’est ce que Gitflow ? Gitflow est un plugin de git crée par Atlassian Son but: Simplifier la gestion des branches Avantages : • Création de préfixes • Fusion de branches multiples • Applique le pattern reconnu gitflow
  4. 4. Master : Versions de prods Develop : Environnement de travail Deux branches sont conservées en permanence Le pattern Branches principales
  5. 5. Le pattern Branches de développement Nouvelle fonctionnalité création d’une branche feature Fonctionnalité terminée fusion à la branche Develop
  6. 6. Les features n’intéragissent jamais directement avec la branche master. Le pattern Branches de développement
  7. 7. Le pattern Branches version En fin de sprint on crée une branche release Elle contient toutes les features terminées du sprint En cas de bug, on peut la patcher Gitflow fusionnera les modifications sur Develop et Master
  8. 8. Le pattern Branches version En fonction du besoin, la plateforme de préproduction • Est reliée à la feature pour les tests spécifiques MOE • Est reliée à dévelop pour les tests globaux MOE • Est reliée à release pour les tests globaux MOA Preprod
  9. 9. Le pattern Branches de maintenance Les branches hotfix sont utilisées pour les petits bugs • Inférieur à 1h de dev • Urgence seulement C’est la seule branche liée directement à la branche stable (master).
  10. 10. Démonstration Initialisation Je crée un dossier vide appelé test-gitflow, et je lance un Git Bash. git flow : Liste les commandes disponibles
  11. 11. git flow init : Initialise mon projet avec l’arborescence de git flow Le programme va me demander le nom de chaque branche à créer. Ici, je ne modifie que le nom de la branche de « develop » par « dev » par convention PRECOM Démonstration Initialisation
  12. 12. Via git branch, on constate que git flow a bien créé les deux branches : • dev • master On est placé automatiquement sur la branche de dev Démonstration Initialisation
  13. 13. git flow feature start : Crée une nouvelle branche feature Le programme me demande le nom Gitflow nous place directement dans la branche test1 On peut travailler et faire des commits normalement Démonstration Initialisation
  14. 14. git flow feature finish : Ferme la branche et merge sur dev Gitflow nous repositionne directement dans la branche dev et supprime la branche feature Démonstration Commandes principales
  15. 15. Ici, la branche 1.0 à bien été créé On est placé directement sur la branche de la release 1.0 git flow release start : Crée la release à partir de la dev Démonstration Commandes principales
  16. 16. La release a été fusionnée, puis supprimée. Un tag 1.0 a été créé sur master. git flow release finish : Ferme la release et merge sur master + dev Démonstration Commandes principales
  17. 17. • Les fermetures de feature/release ne pushent automatiquement • Ne pas oublier git push --tags pour retrouver les tags dans capistrano Complément Remarques importantes
  18. 18. • SourceTree est une interface graphique pour Git • Elle inclut nativement le plugin Gitflow • On y trouve une interface visuelle des détails des modifications et des différences de versions Complément Interface graphique
  19. 19. Complément Interface graphique
  20. 20. Complément Interface graphique
  21. 21. Le « remisage » est une fonctionnalité native à Git. Elle permet : - de stocker des modifications - de mettre le projet à jour pendant une tâche - de changer de branche en cours de travail Complément Remisage
  22. 22. Les stashs sont comme des commits ordinaires hors de tout historique et de toute branche on peut leur appliquer : merge, checkout, patch, etc... Complément Remisage
  23. 23. git stash : Sauvegarde votre copie de travail Votre répertoire de travail est propre : Complément Remisage
  24. 24. git stash list : Voir la liste des stashes avec Complément Remisage
  25. 25. git stash apply <nom> : Applique la remise sur la copie de travail La stash est conservée dans la liste git stash drop <stash_name> : Supprime la remise Complément Remisage
  26. 26. Si un stash devient trop important, il est possible d’en faire une branche avec git stash branch <stash_name> Défaire l'effet d'une remise git stash show -p <stash_name> | git apply -R Pour appliquer puis supprimer une stash git stash pop <stash_name> Complément Remisage
  27. 27. Conclusion Gitflow, c’est donc : • Un gain de temps • Une meilleure organisation • Le respect des standards • Et encore plein de choses à découvrir dans le monde merveilleux de git
  28. 28. Des questions ? Questions

×