Formations DevOps Automatisation Formation GIT : GitLab & GitFlow

Formation Git : GitLab & GitFlow

Rated 4,2 out of 5
Logo Formation Git GitLab GitFlow
Prix 1350€ HT / personne
Durée 2 jours (14 heures)

Paris | Classe Virtuelle

Il ne reste que quelques places
Cafés et déjeuners offerts en interentreprises
Disponible en intra-entreprise pour former votre équipe
Aide au Financement 4000€ de Bonus Atlas en CPF

Présentation

En quelques années, Git est devenu le gestionnaire de source le plus utilisé au monde. Basé sur une gestion de versions décentralisée, Git est un logiciel libre et multiplateforme créé par le non moins célèbre Linus Torvalds. Il se veut simple et performant, Git a pour tâche principale de gérer l’évolution du contenu d’une arborescence.

Dans cette formation, vous apprendrez à maîtriser toute sa puissance ainsi qu’à utiliser les nombreux outils autour de ce projet, tels que GitLab et GitHub, et à collaborer efficacement en équipe grâce à Gitflow.

Nous commencerons par appréhender toutes les subtilités de Git en mode développement à travers l’utilisation de commandes de base, puis avancées, pour finir sur la gestion de l’historique et l’interaction avec des dépôts distants.

Nous aborderons également une approche approfondie de GitLab qui depuis sa création a su développer une infrastructure moderne, simple et claire pour devenir aujourd’hui un outil incontournable de gestion de projet web. Plus qu’un simple gestionnaire de code source, GitLab vous permettra de gérer les droits d’accès, les remontées de bugs, les sprints de votre cycle de vie logiciel.

GitLab permet également d’automatiser le déploiement de projets vers la production et avec ses outils complets, il vous permettra une intégration optimale et un développement en continu avec GitLab CI/CD (Continuous Integration & Delivery) qui vous accompagnera dans vos démarches DevOps d’intégration continue.

Et enfin GitFlow le workflow collaboratif multi-branche qui vous permettra une élaboration et maîtrise de vos branches afin de mieux gérer des demandes clients ou leurs documents. Git Flow est une méthode, une architecture Git permettant de séparer au maximum le travail et de toucher le moins possible à la branche Master. Cette méthode représente donc une architecture en branches très efficaces pour vous aider dans vos développements web & logiciel.

Des problèmes de migration vers Git ? Notre module complémentaire est fait pour vous : dans cette partie optionnelle, nous vous proposons de vous accompagner lors de la migration de SVN (Subversion) vers GIT.

Comme dans toutes nos formations, nous utiliserons la dernière version des logiciels (GitLab 16.10 et Git-Flow AVH 1.12)

 

Objectifs

  • Installer et configurer l’outil GIT
  • Comprendre les différences entre la gestion de version centralisée et décentralisée
  • Gérer efficacement les dépôts locaux et distants
  • Manipuler les commandes de GIT pour gérer les fichiers et les branches
  • Gestion de workflows et de dépôts git avec GitFlow
  • Utilisation des outils d’intégration et de déploiement continus avec GitLab CI
  • Gagner en efficacité en utilisant les outils les plus efficaces de l’écosystème GIT
  • Intégrer et former rapidement un nouvel arrivant à votre projet
  • Appréhender la migration de SVN vers GIT

 

Public visé

Développeurs, Architectes, Administrateurs système

 

Pré-requis

Connaissances de base d’un gestionnaire de source

 

Pré-requis techniques

  • Avoir l’outil Git installé

Programme de notre formation GitLab CI & GitFlow avec GIT

 

Jour 1 – Git & GitFlow

Introduction

  • Contexte et historique de la gestion de versions
  • Cas d’utilisation
  • Présentation de Git
  • Avantages de Git

 

Commandes de base

  • Création du dépôt, dossier .git
  • Les 3 états de Git
  • Commandes add et commit
  • Commandes status, log et diff

 

Les branches

  • Intérêt du branching
  • Pointeurs et HEAD
  • Divergence
  • Les différentes méthodes de fusion
  • Bonnes pratiques de fusion

 

Remotes

  • Dépôt central et multi-dépôt distants
  • Les commandes fetch et pull
  • La commande push
  • Bonnes pratiques d’interaction

 

Commandes avancées

  • Reset et reflog
  • Rebasing, Squashing
  • Gestion du Stash
  • Blame
  • Recherche d’erreurs avec bisect
  • Cherry-pick

 

Jour 2 – Git Flow et GitLab

Workflows collaboratifs

  • Pourquoi utiliser un workflow
  • Les principaux workflows
  • Zoom sur Git Flow et mise en pratique
  • Github Flow et GitLab Flow
  • Introduction à GitLab
  • Forges logicielles
  • Features de GitLab
  • Comment choisir une forge logicielle
  • CE vs EE

 

Installation de GitLab

  • Omnibus vs Docker
  • Installation sur GCP
  • Configuration GitLab SMTP
  • Configuration bas-niveau

 

Administration de GitLab

  • Tour d’horizon de l’interface de gestion
  • Administration des projets
  • Gestion des commits et du code source
  • Gestion des accès
  • Assignation des permissions
  • Utilisation des issues
  • Milestones pour la gestion de projets

 

Bonnes pratiques de collaboration avec Git et GitLab CI

  • Merge requests
  • Rebase (+squash, +fast-forward)
  • Branches protégées
  • Wiki et documentation
  • Intégration Continue avec GitLab CI
    • Configuration GitLab CI/CD
    • Pipelines de CI/CD
    • Gestion des runners
  • Déploiement continu et GitLab Runner
  • Mise en place d’un workflow de collaboration sur GitLab

 

GitLab CI Avancé (MODULE COMPLÉMENTAIRE + 2 jours)

Utilisez toute la puissance de GitFlow ainsi que la puissante chaîne CI de GitLab

 

GitFlow

  • Branches de features/bugfix
  • Branches de versions (et tags)

 

Installation et déploiement de GitLab

  • Les deux modes d’installation seront présentés (docker & .deb)
  • Retour d’expérience de la partie administration de GitLab
  • À l’issue de la formation, nous laisserons une instance fonctionnelle sur leur serveur

 

GitLab & GitFlow

  • Notions du Merge Request (MR)
  • Explorer au travers d’un TP les interactions et collaborations qui peuvent être faites avec une MR, les fonctions qui assistent la revue de code, et les subtilités qui peuvent arriver
  • Le Workflow idéal
  • Outils externes qui peuvent compléter GitLab dans cette partie

 

GitLab Issues

  • Présentation des issues
  • Faire évoluer vos workflows graduellement pour favoriser l’adoption, plutôt qu’être trop disruptif
  • Une démonstration & Live démo

 

GitLab CI

  • Faire un TP CI, pour au moins détailler toute la partie GitLab (et éviter Docker)
  • Montrer un cas simple avec une CI de tests unitaires (sans Docker)
  • Montrer un cas plus intéressant avec des tests fonctionnels. (avec un cas Docker simple)
  • Conclusion

 

MIGRER DE SUBVERSION VERS GIT (MODULE COMPLÉMENTAIRE + 1 jour)

Utilisez GIT en multidépôt et modifiez votre historique

 

TERMINOLOGIE GIT VS SVN (QR)

MIGRER DE SVN VERS GIT

  • Retour d’expérience
  • Les différentes méthodes

 

LA COMMANDE GIT-SVN

  • La migration en 2 étapes
  • Avantages et inconvénients
  • TP: Migrer un dépôt SVN vers GIT

 

GESTION DE PLUSIEURS DÉPÔTS DISTANTS (REMOTE) AVEC GIT

  • Contribuer sur un seul dépôt
  • Contribuer sur plusieurs dépôts
  • Les différents modes d’intégrations
  • Exemple de maintenance d’un dépôt complexe : le projet GIT
  • TP: Gérer plusieurs dépôts distants

 

COMMANDES BASIQUES ET MIGRATION

  • Commandes basiques de GIT
  • TP : Migration de SVN > GIT

 

COMMANDES AVANCÉES DE GIT

LES TYPES D’OBJETS

  • Commit
  • Blob
  • Tree
  • Tag

 

PORCELAINE

  • Développer
  • Inspecter
  • Partager
  • Fusionner
  • Patcher
  • Déboguer
  • Administrer
  • TP: Gérer un cycle complet de versioning

 

GIT HOOKS & SUB-REPOS SUBTREE VS SUBMODULES

  • Dans quel cas utiliser un subtree ou un submodule
  • Utiliser la commande native git submodule
  • Faire un sub-tree à la main
  • Utiliser un script : git-subrepo

 

GIT ATTRIBUTES

  • Traitement des fichiers binaires
  • Filtres bi-directionnels (clean & smudge)
  • Attributs d’archivage
  • Stratégie de fusion

 

GIT HOOKS

  • Environnements des hooks
  • Installer les hooks côté client
  • Installer les hooks côté serveur

Pour aller plus loin

Formation GitOps

Formation Git Avancé

Formation Jenkins

Formation Ruby on Rails Avancé

 

Formation Terraform

Formation Terraform Avancé

Langues et Lieux disponibles

Langues

  • Français
  • Anglais / English

Lieux

  • France entière
    • Paris
    • Lille
    • Reims
    • Lyon
    • Toulouse
    • Bordeaux
    • Montpellier
    • Nice
    • Sophia Antipolis
    • Marseille
    • Aix-en-Provence
    • Nantes
    • Rennes
    • Strasbourg
    • Grenoble
    • Dijon
    • Tours
    • Saint-Étienne
    • Toulon
    • Angers
  • Belgique
    • Bruxelles
    • Liège
  • Suisse
    • Genève
    • Zurich
    • Lausanne
  • Luxembourg

Témoignages

Rated 4,0 out of 5
14 novembre 2023

Les + : Souplesse et pédagogie du formateur

Les – : Un 3e jour serait bienvenu

Frédéric C. de chez CISIRH

Afficher tous les témoignages

Rated 4,0 out of 5
14 novembre 2023

Les + : Souplesse et pédagogie du formateur

Les – : Un 3e jour serait bienvenu

Frédéric C. de chez CISIRH
Rated 4,0 out of 5
14 novembre 2023

Les + : Le nombre réduit à permis une interaction facilité avec le formateur

Les – : La formation en 2 jours est bien peu courte pour appréhender l’ensemble des objectifs

Je souhaite suivre : formation HTML – PHP

En synthèse : Cette formation sur 3 ou 4 jours seraient plus appréciables pour assimiler l’ensemble de la formation

Rudy I. de chez CISIRH
Rated 5,0 out of 5
14 novembre 2023

Je recommande la formation

Antoine R. de chez Docaposte Arkhineo
Rated 4,0 out of 5
27 juin 2023

Les + : Très bonnes explications du formateur et sa disponibilité

Les – : Pour la partie pratique, des cas types plutôt que des exercices parfois alambiqués m’auraient été plus utiles.

Il manque notamment une mise en pratique sur l’utilisation de GitLab (ex : travailler sur un projet test avec des actions types à faire, les recommandations de méthodes de travail)

Mathieu B. de chez CETIM
Rated 4,0 out of 5
27 juin 2023

Les + : Grande clarté du professeur

Les – : Il faudrait peut être un environnement virtuel pour tester gitlab et la CICD

Je souhaite suivre : Machine learning

Lila N. de chez JELLYSMACK STUDIOS
Rated 4,0 out of 5
11 octobre 2022

Cas pratiques permettant une bonne compréhension des difficultés que l’on peut rencontrer dans un projet GIT

Gestion de l’hétérogénéité des niveaux, le formateur n’est pas en cause, un écart important entre les participants étaient déjà présents.

Elie G. de chez SNCF SA VOYAGEURS
Rated 3,0 out of 5
11 octobre 2022

Côté pratique.

Formation qui ne devrait pas se faire à distance.

Attention à peut-être faire des groupes de niveaux.

RAS.

Rémy M. de chez SNCF SA VOYAGEURS
Rated 3,0 out of 5
11 octobre 2022

Expérience et dynamisme du formateur

Prise en compte des niveaux hétérogènes difficile sur la première journée (le questionnaire pour évaluer le niveau des participants est-il pris en compte?)

Je ne sais pas

Niveau de patience du formateur faible. Le formateur s’impatiente et s’agace lorsqu’on ne comprend pas les concepts ou la pratique aussi facilement qu’il le pensait. Ça s’entend à sa voix et ça se voit sur son visage. Ça ne donne pas envie de le solliciter, car on a l’impression de passer pour un idiot.

Exemple : je n’ai pas répondu à une question dans laquelle il demandait si tout le monde avait bien réussi une étape d’un exercice (j’étais en train de résoudre mon problème de proxy en redémarrant mon PC). Lorsque j’ai exprimé le fait que j’étais toujours bloqué à l’étape précédente, le formateur s’est énervé et n’a pas souhaité m’aider, car je n’avais pas répondu à sa question. Je lui ai expliqué la situation, et que donc j’avais loupé sa question à cause du redémarrage à ce moment-là (j’avais prévenu dans le chat que j’allais redémarrer mon PC). Il n’a pas souhaité m’aider et a continué avec le reste de la classe. Du coup, de toute la matinée du mardi, je n’ai fait aucun exercice et j’en garde un goût amer.

De plus, au cours de la formation, le formateur a utilisé à de nombreuses reprises le mot « handicapé » pour se qualifier lui-même, lorsqu’il n’arrivait pas à effectuer une action sur son PC. J’ai trouvé ça déplacé et insultant pour les personnes avec un handicap (qui au passage, pourrait faire partie de son audience un jour).

Je compte payer une formation avec mes propres moyens pour compléter ma maîtrise de Git et gitlab, car celle-ci n’a pas été satisfaisante.

Benjamin A. de chez SNCF SA VOYAGEURS
Rated 4,0 out of 5
11 octobre 2022

Le formateur a su adapter le niveau de la formation après la 1ʳᵉ journée malgré les différences de niveaux.

Le fait de faire à distance n’aide pas le formateur à appréhender les problèmes de chacun. Les problèmes liés aux problèmes d’installation / configuration n’aident pas. Une formation en salle serait plus pertinente.

Merci à Mathieu pour sa patience et s’être adapté au niveau de chacun.

Julien L. de chez SNCF SA VOYAGEURS
Rated 3,0 out of 5
11 octobre 2022

TP Pratique

Manque de temps, et TP doit être plus guidé pour les novices.

Alexis B. de chez SNCF SA VOYAGEURS
Rated 4,0 out of 5
27 janvier 2022

Je recommande la formation

Valera R. de chez ASSOCIATION LEONARD DE VINCI
Rated 3,0 out of 5
27 janvier 2022

la technicité du formateur

certains points n’étaient pas adaptés à noter organisation

Aude D. de chez ASSOCIATION LEONARD DE VINCI

Noter la formation

Prix 1350€ HT / personne
Durée 2 jours (14 heures)

Paris | Classe Virtuelle

Il ne reste que quelques places
Cafés et déjeuners offerts en interentreprises
Disponible en intra-entreprise pour former votre équipe
Aide au Financement 4000€ de Bonus Atlas en CPF

UNE QUESTION ? UN PROJET ? UN AUDIT DE CODE / D'INFRASTRUCTURE ?

Pour vos besoins d’expertise que vous ne trouvez nulle part ailleurs, n’hésitez pas à nous contacter.

ILS SE SONT FORMÉS CHEZ NOUS

partenaire sncf
partenaire hp
partenaire allianz
partenaire sfr
partenaire engie
partenaire boursorama
partenaire invivo
partenaire orange
partenaire psa
partenaire bnp
partenaire sncf
partenaire hp
partenaire allianz
partenaire sfr
partenaire engie
partenaire boursorama
partenaire invivo
partenaire orange
partenaire psa
partenaire bnp