Formation Git Total

La formation Git Total permet à tou·te·s, que vous ayez ou non déjà utilisé Git, voire même de la gestion de versions, de comprendre en profondeur les concepts et le fonctionnement de Git, d’apprivoiser rapidement ses commandes de base mais aussi de nombreuses commandes plus avancées, pour aboutir à un workflow et des bonnes pratiques qui surboostent votre productivité et celle de votre équipe projet !

  • Concepts avancés
  • Nombreux exercices
  • Cas d’exemple concrets
  • Supports complets
  • Guide d’installation / configuration
  • À votre écoute

Objectifs

La formation Git Total vise à permettre aux apprenant·e·s de :

  • prendre en main l’outil Git et son environnement de travail ;
  • maîtriser l’ensemble des concepts qui sous-tendent les commandes Git et le fonctionnement général de l’outil ;
  • améliorer leur productivité et réduire leurs contraintes de développement en tirant au mieux parti des possibilités de Git ;
  • collaborer plus efficacement avec leurs collègues de projet en maîtrisant les mécanismes de gestion de branches, de fusion, et de réorganisation d’historique ;
  • savoir gérer une urgence alors que le dépôt n’est pas dans un état stable ou cohérent ;
  • faciliter la mise en œuvre de normes d’écriture de code dans la société ;
  • automatiser les processus de gestion de code en rapport avec le dépôt Git ;
  • partager efficacement du code entre plusieurs projets tout en assurant une maintenance, centralisée ou distribuée.

Grâce à ce format, les apprenant·e·s peuvent solidement ancrer leurs acquis Git tout frais, et s’approprient mieux les nombreuses commandes et scenarii variés présentés au fil de la formation. C’est véritablement une formule parfaite.

Programme

  1. Préparer son environnement de travail

    • Configurations globale et locale
    • Aliases et raccourcis incontournables
    • Activer les complétions automatiques
    • Informations d’état automatiques dans le prompt
  2. Concepts de la gestion de dépôt Git

    • Les « zones » : working directory/tree, index/stage, dépôt
    • Les « états » : non versionné, modifié, staged, non modifié
    • Aperçu du dossier .git
  3. Premier dépôt

    • Initialisation
    • Import initial
    • Exclusions globale et locale (.gitignore, .git/info/exclude…)
    • Savoir ce qu’on a dans chaque zone / état en utilisant efficacement git diff
    • La notion critique de HEAD
    • Syntaxes de révision : du basique à l’avancé, mais toujours utile
    • Optimiser la consultation de l’historique : merveilles cachées de git log
  4. Commits atomiques et approche chirurgicale

    • Ajouts partiels (seulement certains fichiers ou certaines parties de fichiers)
    • Unstaging
    • Annuler le dernier commit
    • Modifier le dernier commit
    • Raccourcis fréquents et pratiques
  5. Gérer l'urgence avec le stash

    • Mettre son travail de côté le temps d’une tâche urgente
    • Récupérer le stash (multiples façons)
    • Aspect pratique face au conservatisme de Git lors d’une demande de fusion
  6. Récupérer un commit « perdu »

    • Le reflog
    • Modalités de préservation et de purge
  7. Gestion de branches

    • Une branche en Git, c'est quoi au juste ? Contraste avec les systèmes plus classiques (SVN, etc.)
    • Fusion classique
    • Fast-forward
    • Stratégies de fusion et décisions automatiques
    • Méthodologie de résolution de conflits
    • Fusion vs. Rebasing : quand, pour qui, pourquoi ?
    • Scenarii classiques de rebasing
    • Stratégies de gestion de branches et de collaboration
  8. Git reset, le couteau suisse méconnu de Git

    • Un reset, qu’est-ce que c’est ?
    • Les 5 modes de git reset
    • Scenarii classiques où reset nous sauve la vie
    • Resets irréparables ou non
  9. Prendre soin de son historique de révisions

    • Un historique au cordeau : quels intérêts ?
    • Réordonner les commits
    • Supprimer des commits
    • Découper des commits
    • Fusionner des commits
    • Annuler un commit ancien
  10. Dépôts distants

    • Autant de remotes qu'on veut…
    • Protocoles réseau de Git : préférences selon le contexte
    • Bien comprendre les relations entre fetch, merge, rebase, pull et push
    • Tracking ou non ?
    • Branches distantes vs. branches locales
    • Les bons réflexes pour avoir un push et un pull qui fonctionnent bien
  11. Récupérer des portions choisies de l’historique

    • Cherry-picking
    • Lister rapidement les commits et branches pertinents
  12. Traquer automatiquement l’origine d’un bug

    • Principe de recherche dichotomique
    • Exécution manuelle de git bisect
    • Scripting et automatisation de bisect
  13. Enregistrer puis partager la résolution manuelle d’une fusion

    • Configuration du rerere
    • Enregistrer la résolution du conflit
    • Exploitation automatique et vérification manuelle
    • Workflow appliqué : éviter les merges de contrôle sur les branches de longue durée
  14. Comprendre et maîtriser les submodules

    • Principes fondamentaux
    • Différences avec svn:externals
    • Mise en place
    • Déploiement
    • Mises à jour
    • Les nombreux pièges
  15. Comprendre et maîtriser les subtrees

    • Principes et contraste avec les submodules
    • Mise en place
    • Déploiement
    • Mises à jour
    • Subtrees ou submodules ? Quel choix pour quelle situation ?
  16. Automatiser des traitements sur événements

    • Les hooks
    • Hooks en local et côté serveur
    • Scenarii classiques d’utilisation
    • Quelques exemples concrets

Prochaines sessions

  • du 13 au 15 septembre 2017 - Paris
  • du 25 au 27 octobre 2017 - Paris
  • du 6 au 8 décembre 2017 - Paris

Tarifs

Votre demandeTarif unitaire
1 à 2 apprenant·e·s1 200 € HT
3 à 5 apprenant·e·s1 080 € HT
6+ apprenant·e·s960 € HT
Tarif fidélité1 020 € HT
Demandez votre convention !

Public visé et pré-requis

La formation Git Total s’adresse principalement aux personnes travaillant sur des dépôts en gestion de source.

Elle vise aussi bien les personnes utilisant déjà Git qui souhaitent parfaire et étendre leur compréhension de l’outil et leurs connaissances (ou ont, à l’instar de la majorité des utilisateurs, le sentiment de sous-utiliser l’outil, de faire « du Subversion en Git »), que celles qui désirent passer à Git dans les meilleures conditions possibles.

La formation répond aux frustrations des personnes qui perçoivent qu’elles passent à côté de nombreuses fonctionnalités utiles, à même de considérablement accélérer leur travail quotidien.

Une connaissance préalable d’au moins un gestionnaire de sources répandu, tel que Subversion, Perforce, ClearCase, TFS, Mercurial ou Bazaar, est utile afin d’avoir déjà une familiarité avec les concepts basiques tels que les révisions/versions/commits, le tronc/master, les branches et les tags. Il ne s’agit toutefois pas d’un pré-requis.

Livrables

Les apprenant·e·s reçoivent, en début de session, l’ensemble des diapositives du support de cours au format web, afin de pouvoir faciliter leur suivi du plan de cours.

Après la session, ils reçoivent par ailleurs, avec un e-mail de debrief très fourni et riche en ressources, une archive de référence, contenant les codebases finalisées, entièrement documentées et testées, les slides de toute la formation et diverses ressources complémentaires.

Aspects logistiques

La formation se déroule dans une salle privative climatisée, lumineuse, fonctionnelle et très confortable. L’ensemble des locaux sont facilement accessibles en transports en commun et accessibles aux Personnes à Mobilité Réduite.

Situé à Paris, près de Nation, ils sont accessibles via pas moins de 5 lignes de métro, 1 ligne de RER et 5 lignes de bus :

  • Métro Ligne 2 Philippe-Auguste ou Alexandre Dumas
  • Métro Ligne 9 Charonne ou Rue des Boulets
  • Métro Ligne 8 Faidherbe-Chaligny
  • Métro Ligne 1 Ligne 6 RER Ligne A Nation
  • Bus Ligne 26 Ligne 57 Ligne 86 Nation
  • Bus Ligne 56 Charonne-Voltaire ou Boulets-Montreuil
  • Bus Ligne 76 Charonne-Philippe-Auguste
Delicious Insights

83 avenue Philippe-Auguste
75011 Paris

Voir sur Google Maps

On trouve également nombre de parkings alentour.

  • Chaque apprenant·e amène son propre poste de travail ou ordinateur portable.
  • L’accès internet est assuré par une connexion fibre très haut débit. La salle fournit un accès Wi-Fi et, pour les cas exceptionnel, une infrastructure Ethernet filaire.
  • Vous n’êtes pas en région parisienne et cherchez un hébergement ? Pourquoi ne pas passer par airbnb ? Ça existe même pour les entreprises.
  • Les formations Git nécessitent quelques installations préalables sur votre machine : toutes les instructions sont ici pour OSX, Linux et Windows.

  • Les formations vont de 4 à 10 apprenant·e·s.

Les horaires indicatifs de la formation, pour un total de 7 heures par jour soit 21h de formation, sont :

  • 9h15Accueil, petit déjeuner (boissons chaudes et fraîches, viennoiseries)
  • 9h30Début de la journée
  • 12h30Déjeuner (inclus dans le prix)
  • 13h45Reprise
  • 16h15Pause café
  • 16h30Reprise
  • 18hFin de la journée

Vous pourrez retrouver toutes les informations sur les modalités d’inscription et de paiement, l’annulation et le remboursement dans nos Conditions Générales de Vente, sans oublier notre règlement intérieur.


Nos locaux, pour nos formations inter-entreprise (cliquez pour agrandir) :

Formateurs

Christophe Porteneuve

Christophe Porteneuve

Christophe conçoit des pages web depuis 1995. Co-créateur du premier portail JSP en Europe, en 1999, il passe par J2EE avant de tomber dans Ruby, Rails puis Node.

Auteur du best-seller « Bien développer pour le Web 2.0 » chez Eyrolles, il a également écrit la référence « Prototype and script.aculo.us » chez Pragmatic Programmers, des articles dans divers magazines en ligne (notamment le très respecté A List Apart), et il est speaker pour plusieurs conférences petites et grosses.

En France, Christophe jouit d’une solide réputation d’expertise dans les univers du web front (notamment JavaScript), de Node.js, de Git et de Rails.

Christophe est le fondateur et directeur technique de Delicious Insights.

Maxime Bréhin

Maxime Bréhin

Ingénieur diplômé en 2006, Maxime a peiné 5 ans dans un environnement Java/Subversion dans le consulting et la banque/finance…

Après un passage d’un an en Australie en 2009, il se tourne vers des technologies bien plus agréables : Ruby, Rails et Git. C’est en 2010 qu’il travaille pour la première fois avec Christophe, déjà en tant qu’ingénieur R&D pour la conception et la mise en œuvre d’une solution e-commerce.

En 2012, il lui succèdera comme Directeur Technique, pour finalement le rejoindre chez DI 3 ans plus tard.

Maxime est ingénieur R&D chez Delicious Insights.

Témoignages

  • Le formateur est très pédagogue et sait donner de la passion et du rythme sans ses formations.

  • L’atout principal de cette formation est qu’elle propose beaucoup de cas pratiques et de solutions aux problèmes rencontrés au quotidien avec l'utilisation de Git. J’ai par ailleurs eu la chance d'avoir Maxime Bréhin comme formateur, un excellent pédagogue.

  • La formation est clairement dispensée par des personnes qui maîtrisent bien leur sujet. Les demandes des personnes suivant la formation sont écoutées et traitées, non pas seulement en surface, mais en cherchant bien les raisons qui ont amené à cette solution.

    Samuel Marchand Sage
  • Tout est mis à disposition pour que les participants soient dans les meilleures dispositions pour apprendre.

  • Grâce à Git Total, j’ai fait un rebase interactif sur mes connaissances !

  • Formation intensive (dans le bon sens du terme) et bien faite, que j’ai commencé à recommander aux codeurs que je connais 😊

    Rémi Gérard-Marchant
  • Une formation très riche, qui est accessible même aux personnes n’ayant pas de bases dans la gestion des versions de leurs applications. L’équipe est accueillante et souriante, l’accueil général chaleureux et le formateur est un orateur d’excellente facture.

    Alexandre Noury
  • Encore un excellent moment passé en compagnie de Christophe pour une formation de qualité et de haut niveau ; dans un lieu agréable ; et dans la joie et la bonne humeur. Indispensable !

  • Un formateur disposant d’une vraie compétence.

    Arnaud Lemaire
  • Formation agréable & accessible. J’attendais une mise au point des concepts Git, c’est gagné ! Merci Christophe.

    Frédéric Madrolle
  • Le formateur maîtrise son sujet. Très bon rythme. Très satisfaisant.

    Julien
  • Excellentes connaissances techniques du formateur.

    Damien Bendejacq
  • Avant la formation j’entendais toujours dire que Git est super complexe et qu’il est difficile de travailler avec. Aussi j’ai abordé cette formation avec au ventre la peur transmise par mes collègues.

    Dès le début, j’ai pourtant commencé à me détendre au fil des moments où je me suis dit « mais attends, en fait, ce n’est pas compliqué—c’est logique que ça marche comme ça ».

    À la fin de la formation je me sentais beaucoup plus confiant avec Git et j’étais persuadé qu’il s’agissait du bon choix pour notre gestion de sources. Alors merci d’avoir servi de passerelle pour dépasser notre peur de l’inconnu et nous avoir donné confiance dans notre capacité à exploiter toute la puissance de Git.

  • Le contenu est très bien choisi. J’ai beaucoup apprécié les 3 jours de formation avec Maxime et Christophe. La formation Git Total est un atout considérable pour bien comprendre les concepts de Git, autant adaptée à des débutants qu’à des utilisateurs plus avancés. Maintenant non seulement je sais où chercher, je comprends aussi ce que je lis.