Devenir devops, cela passe par l’acquisition de nombreuses compétences. Il y en a tellement qu’il est bien difficile de se fiwer une liste. Au mieux on peut se fixer les grandes lignes et comme nous l’avons lors d’un précédent article, se fixer une liste de type d’outils.
Mais un devops doit aussi être adepte de certaines méthodes de travail (agile, scrum…). Gitflow fait partie des méthodes de développement à cheval entre l’utilisation d’un outil technique comme git et l’organisation d’une équipe (ou de plusieurs).
Avec GitFLow, vous organisez le travail en équipe pour développer et bien sûr en utilisant git. Le principe est simple, utiliser plusieurs branches pour symboliser les différentes étapes majeures du développement (que ce soit des outils applicatifs métiers ou encore des outils d’infrastructures).
Git flow est souvent représenté par le schéma suivant :
Chaque ligne représente une branche :
- features : les branches de développement “individuelles”
- develop : la branche dans laquelle les développeurs mergent leur travail quand il estime qu’il est réalisé (éventuellement via merge request)
- release : il s’agit de la branche à partir de laquelle on va estimer si la version est bonne (à l’issue de tests…)
- master : ou branche de production
- hotfix : dans le cas d’une nécessité de correction rapide suite à incident
Gitflow consiste donc à organiser le processus de développement et avancer dans ce process via des merges.