Logo Git

Formation Git

Git est un logiciel de gestion de version de code source. Il permet aux développeurs de suivre et de gérer les modifications apportées au code source d'un projet de logiciel au fil du temps. Git stocke ces modifications sous forme de "commits", qui sont des instantanés du code source à un moment donné. Les développeurs peuvent naviguer entre les différents commits pour voir comment le code a évolué au fil du temps et peuvent également fusionner des commits pour fusionner des modifications de code. Git est particulièrement utile lorsque plusieurs développeurs travaillent sur le même projet de logiciel, car il permet de gérer les conflits de code et de travailler de manière collaborative. Git est également utile pour sauvegarder le code source d'un projet et pour le rendre disponible à plusieurs personnes. Git est un logiciel open source qui est largement utilisé dans l'industrie du développement de logiciels et est devenu l'un des outils de gestion de version de code source les plus populaires au monde. Il est disponible sur de nombreuses plateformes, y compris Windows, macOS et Linux.

Objectifs pédagogiques

  • Maitriser les commandes git du quotidien
  • Travailler avec les branches
  • Pouvoir revenir à une version précédente de son travail
  • Collaborer proprement à plusieurs

Pré-requis

  • Notions de bases sur l’utilisation d’un terminal
  • Avoir déjà contribué de près ou de loin à un projet de développement

Public

  • Développeurs
  • Chefs de projets

Programme

Jour 1

Introduction

  • Gestion de versions centralisée vs distribuée
  • Une modification, 3 états : working directory, staging area, git repository
  • Installation et configuration locale et globale
  • Git en ligne de commande et principales interfaces graphiques : SourceTree, GitKraken...

Git au quotidien

  • Initialisation ou clonage d’un dépôt
  • Création d’une version avec git add et git commit
  • Consulter l’état d’un dépôt avec git log et git status
  • Afficher le contenu d’un commit ou la différences entre 2 versions
  • Mettre de côté avec git stash
  • Ignorer des fichiers

Les branches

  • Quand et pourquoi créer une branche ?
  • Fusionner avec merge : fast-forward, merge commits et squash
  • Réécrire l’historique d’une branche avec rebase et rebase --rebase-merges
  • Gestion des conflits

Collaborer avec les remotes

  • Définir et lister ses remotes
  • Rapattrier des commits avec git fetch et git pull
  • Partager son travail avec git push

Jour 2

Les workflows

  • Workflow centralisé
  • Forks
  • Git flow
  • GitHub Flow
  • GitLab Flow

Maintenir et réécrire son historique

  • Maintenir un historique lisible, conventions de nommage
  • Revenir à une version précédente de son travail temporairement avec git checkout et git restore
  • Annuler des commits avec git reset et git revert
  • Réécrire l’histoire avec git commit --amend, git rebase interactif
  • Le reflog et cherry-pick pour ne jamais perdre un commit

Mise en place de Git

  • Fonctionnement du répertoire .git
  • Automatiser avec les hooks, manuellement et via des bibliothèques
  • Migration depuis SVN
  • Installation d’un serveur via partage réseau, SSH, HTTP et protocole git
  • Gestion des tags
  • Utilisation des sous-modules
  • Comparatif et présentation des plates-formes : GitHub, GitLab, Bitbucket

Méthodes mobilisées

  • Un formateur validé par nos équipes techniques et pédagogiques sera présent pendant toute la durée de la formation
  • Pour les formations en présentiel, une salle de formation sera mise à disposition et équipée d'ordinateurs portables, d'un accès Wi-Fi, d'un projecteur et d'un tableau blanc. En distanciel la session sera suivie sur Zoom ou autre outil de visioconférence sur demande (Teams, Webex, Google Meet...).
  • Un support de cours en version numérique sera remis à chaque participant

Modalités d’évaluation

  • Questions orales ou écrites (QCM)
  • Exercices pratiques
  • Auto-positionnement en amont et aval de la formation

Accessibilité aux personnes handicapées

Nous nous engageons à rendre notre formation Git accessible aux personnes en situation de handicap. Merci de nous contacter afin que nous puissions réaliser les adaptations nécessaires en amont de la formation.

Avis

Gaël T.

le 22 avril 2022

Jacques L.

le 22 avril 2022

Eric G.

le 22 avril 2022

Emeric J.

le 22 avril 2022

La formation
Support de cours bien rédigés avec les concepts permettant de reprendre ou relire la formation (liens vers des articles ou références de qualité)

Le formateur
Balance théorie/pratique bien équilibrée sur une formation de 2 jours pleins.

Les +
Formation à distance possible (plus confortable qu'en salle de cours, meilleure assimilation)
Explications théoriques et concepts appréciées
Expérience technique du formateur appréciée

Cyrille N.

le 22 avril 2022

Thierry B.

le 22 avril 2022

La formation
ras

Sébastien B.

le 22 avril 2022

Brice B.

le 22 avril 2022

Les +
Adaptation de la formation à notre gitlab

Imad B.

le 22 avril 2022

Thierry S.

le 22 avril 2022

Géraldine S.

le 22 avril 2022

La formation
Cours complet.

Les +
Formation très complète avec beaucoup de notions différentes et l'exploration de différentes solutions possibles selon le scénario.

Suyan D.

le 22 avril 2022

Antoine C.

le 22 avril 2022

Samir A.

le 22 avril 2022

Benoit P.

le 22 avril 2022

Valentin B.

le 11 mars 2022

La formation
La formation répond très bien à mes attentes. Le seul petit bémol que je peux donner est sur les TP : en faire un poil plus et être plus guidé le long du TP pourrait être un plus.

Le formateur
On sent que le scénario est bien rodé. Juste vers la fin c'est allé très vite sur ses compétences à lui (loin des notres et trop tech pour nous je pense), et sur les TP, plus nous challenger aurait été un plus je pense.

Les +
Le fait de s'adapter à nos demandes, notamment passer un peu plus de temps sur Gitlab plutôt que Github, même sans l'avoir forcément de prêt.
La vue ''pratique'' de cette formation, tournée vers les besoins réels qu'on peut rencontrer en entreprise, et non une formation théorique sur Git que j'ai pu avoir dans le domaine académique.

Commentaire général
Merci pour cette formation qui m'a permis de structurer ma connaissance de Git, avec des choses que j'avais récupérées à droite et à gauche sans avoir une vue globale.
J'en ressors motivé pour améliorer mon utilisation de Git et Gitlab !

Virgile A.

le 11 mars 2022

La formation
Excellente formation qui reprend les bases et aborde des notions plus complexes

Le formateur
Un formateur compétent et très pédagogue

Enzo T.

le 11 mars 2022

Allan O.

le 11 mars 2022

Marion L.

le 11 mars 2022

Les +
Explications à la fois en ligne de commande et interface graphique ainsi que les workflows

Simon B.

le 11 mars 2022

Joannes C.

le 11 mars 2022

Aurélien C.

le 14 septembre 2021

La formation
Formation intéressante.
Conforme à nos attentes
ça nous permet de comprendre les différentes commandes GIT et mieux les utiliser / choisir
Intéressant également de voir Source Tree et Github/Gitlab
Exo / pratique : permet d'ancrer les notions présentées dans les slides

Le formateur
Très bien. Merci Romain.

Benjamin M.

le 14 septembre 2021

Le formateur
nous n'étions que 3 collègues à être formés ce qui a permis d'avoir un groupe de travail 'restreint'. cela permettait au formateur d'être toujours disponible pour toute question, même lors des TP, ce qui se rapproche d'un "cours particulier" et est très appréciable.

Commentaire général
réponse 'non' à opérationnel car pour moi, il faut un temps de pratique afin d'être à l'aise et donc opérationnel.
il faudrait un bouton 'a peu près serein'

Renaud B.

le 14 septembre 2021

La formation
j'avais quelques notions, mais beaucoup de zones d'ombre. les choses sont beaucoup plus claires à présent

Le formateur
romain est très compétent, abordable, et à l'écoute des demandes.

Commentaire général
il faudra un temps de pratique pour se familiariser aux bonnes pratiques. j'ai désormais une bonne vision du fonctionnement global de git

Dernière modification le 26/12/2022