offres

Formation continue

Git et GitHub

Dans cette formation Git Complète, nous allons apprendre à gérer les versions de notre projet comme un vrai pro à l’aide de l’outil Git. Git est un logiciel de gestion de version parmi les plus populaires avec plus de 12.000.000 d’utilisateurs. Il est présent dans la grande majorité des entreprises de développement et est clairement l’incontournable des projets open source. Développé à l’initiative du créateur du noyau Linux, Linus Torvald en 2005. Il se démarque de ses concurrents par sa rapidité et son mode de fonctionnement décentralisé permettant à chaque utilisateur de travailler sur sa machine locale avant de mettre à disposition son travail sur un serveur.

Informations

  • Durée : 2 à 3 jours (de 9:30 à 12:30 et de 13:30 à 17:00) ;
  • Nombre de participants : 4 à 10 ;
  • Public : Ingénieur, techniciens et chefs de projet ;
  • Niveau de compétences: Tous les niveaux ;
  • Modalités: Dans vos locaux ou nos locaux ou encore en vidéo conférence ;
  • Prix: À partir de 2719€ HT pour un groupe de 4 personnes. Supplément de 150 € HT par jour de formation pour chaque participant supplémentaire. Hors frais de personnalisation et de déplacement – TVA 20% ;
  • Référence : Formation GIT ;
  • Contenu
    • Formation dispensée par Arnaud MERCIER ;
    • Slides de la formation avec commentaires du formateur ;
    • Fiche de synthèse des commandes Git et schémas ;
    • Exercices et corrigés ;

Que vont apprendre les participants ?

  • Installer et configurer Git ;
  • Comprendre les principes de gestion de version ;
  • Comprendre la philosophie de Git. (commits, branches, réferences, remotes) ;
  • Maîtriser les bases de l’outil Git (Clone, Checkout, Add, Log, Commit, Tags, Push, Pull) ;
  • Travailler avec une plateforme distante (Gitlab, Github, Gerrit, Bitbucket) ;
  • Savoir utiliser la puissance des branches (Branch, Merge, Rebase, Cherry-pick) ;
  • Résoudre les conflits de commit (Merge, Rebase, Pull) ;
  • Travailler en petites et grandes équipes avec Git (Git Flow, Merge request, Pull request) ;
  • Organiser et gérer correctement son projet (Git Submodule, Git LFS, Git Flow, Google Repo) ;
  • Corriger les erreurs et réécrire l’historique (Reset, Rebase Interactif, Stash, Revert, amend);
  • Découvrir les interfaces graphiques pour Git (Git Gui, Gitk, …) ;
  • Utiliser les Git hooks (server et client) ;

Prérequis pour la formation
  • Ordinateur (Windows, Linux, IOS) ;
  • Savoir installer un logiciel sur son ordinateur ;
  • Et c’est tout ! ;

Programme de la formation

Cette formation se découpe en 2 ou 3 jours. Les jours 1 et 2 correspondent aux fondamentaux de l’outil Git. Le premier correspond à l’utilisation de Git en local alors que le deuxième correspond à l’utilisation de Git avec un serveur distant. Le 3eme jour est destiné quant à lui aux personnes qui souhaitent approfondir leurs connaissances dans l’outil avec des notions plus avancées.

  • Jour 1 :
    • Introduction
      • Présentation de la formation et du formateur
      • Pourquoi versionner son code et comment cela fonctionne
      • Présentation de Git
      • Quiz
         
    • Installation et configuration de Git
      • Installer Git (Windows, Linux et Mac)
      • Rappel des notions de base des invites de commandes (git version)
      • Configuration de Git (git config)
      • Savoir utiliser l’aide (git -h)
      • Quiz

    • Les commits
      • Comprendre le processus de commit
      • Mise en place du projet fil rouge (petite page web)
      • Initialiser un dépôt Git en local (git init)
      • Indexer ses modifications (git add, git restore, git status)
      • Faire son premier commit (git commit)
      • Voir les modifications en cours (git diff)
      • Corriger son dernier commit (git commit --amend)
      • Faire un commit sélectif (git add -i)
      • Déplacer ou supprimer un fichier (git mv, git rm)
      • Filtrer les fichiers gérés par Git (.gitignore)
      • TP et bilan du chapitre

    • Voyager dans l’historique des commits
      • Comprendre l’archivage des commits (.git)
      • Voir l’historique (git log)
      • Voir les détails d’un commit (git show)
      • Naviguer dans l’historique (git checkout)
      • Utiliser les tags (git tag)
      • Annuler un commit (git revert)
      • TP et bilan du chapitre

    • Les branches
      • Comprendre le système de branche
      • Créer une branche (git branch)
      • Copier un commit (git cherry-pick)
      • Faire un merge entre deux branches (git merge)
      • Faire un rebase entre deux branches (git rebase)
      • Merge VS Rebase
      • Mettre de côté des modifications (git stash)
      • TP et bilan du chapitre

  • Jour 2 :
    • Les Interfaces graphiques pour Git
      • Différences entre Git en ligne de commande et via les IHMs
      • Git Gui
      • Gitk
      • Autres interfaces
      • Git dans les IDE
      • TP et bilan du chapitre

    • Hébergement de dépôts Git (Github, Gitlab, Bitbucket, Gerrit, …)
      • Présentation de la plateforme
      • Partage de code
      • Les dépôts
      • Les Issues
      • Système de relecture de code
      • Contribuer à un projet open source
      • TP et bilan du chapitre

    • Travailler avec un un dépôt distant
      • Comprendre le modèle distribué
      • Cloner un dépôt (git clone)
      • Gérer les remotes (git remote)
      • Pousser ses modifications sur le serveur (git push)
      • Récupérer les modifications depuis le serveur (git fetch, git pull)
      • TP et bilan du chapitre

    • Travailler en équipe
      • Les organisations d’équipe autour de Git (Gitflow)
      • Gérer les conflits lors des pull
      • Travailler avec des branches
      • TP et bilan du chapitre

  • Jour 3 :
    • Réécrire l’histoire
      • Modifier son dernier commit (git commit --amend)
      • Annuler un commit (git revert)
      • Réécrire l’historique d’une branche (rebase interactif)
      • Modifier des commits plus anciens (edit)
      • Fusionner des commits (squash)
      • Reset les branches (git reset)
      • TP et bilan du chapitre

    • Personnaliser Git
      • Configurer git
      • Les alias
      • Les attributs
      • TP et bilan du chapitre

    • Debugger son code
      • Maîtriser les modifications (git blame, git log, git show)
      • Retrouver le commit qui pose problème (git bisect)
      • Relecture de code
      • TP et bilan du chapitre

    • Gestion projet multi-dépôts
      • Présentation des enjeux et difficultés
      • Sans gestion particulière (à la main)
      • Via des scripts
      • Via les submodules / subtrees
      • Via Repo de Google
      • TP et bilan du chapitre

    • Notions avancées
      • Les hooks
      • Git LFS
      • Migraton
      • Intégration
      • Administration
      • TP et bilan du chapitre

Retour
Git et GitHub

En savoir plus

Pour tout renseignement :