AELION : 04. Git - Gestion du contrôle de versions
Organisme
31200 TOULOUSEVoir toutes ses formationsAutres organismes proposant cette formation
Durée
Modalités
- Classe virtuelle
- Présentiel
Questionnaire d’évaluation des pré-requis, suivi des connaissances tout au long de la formation par des questionnements, exercices…, Evaluation des acquis en fin de formation
Prix
Public
Architectes, Chefs de projets, Consultants, Développeurs, Ingénieurs…
Pré-requis
Savoir pratiquer Java avec Eclipse est recommandé.
Objectifs pédagogiques
- Connaître les principes de fonctionnement d’un gestionnaire de versions distribué
- Découvrir par la pratique la philosophie de Git et ses apports
- Créer et initialiser un dépôt avec Git
- Manipuler les commandes de Git pour gérer les fichiers et les branches
- Mettre en œuvre un projet en mode collaboratif avec Git
Programme détaillé
JOUR 1
Placer GIT dans les systèmes de gestion de version
A l’issue de cette séquence, vous êtes capable de recentrer Git dans l’ensemble des outils de gestion de version existants.
- Historique de Git
- Git un système de gestion de version décentralisé
- Principes de fonctionnement de GIT : snapshots vs per file
- Les « états » de GIT (worktree, stage, database)
Installer et configurer GIT
A l’issue de cette séquence, vous vous êtes approprié l’environnement Git et vous êtes capable de lire la configuration.
- Installation de GIT en fonction des plateformes,
- Configuration initiale,
- Réglages par défaut en fonction des environnements,
- Les attributs Git
Initialiser un dépôt GIT local
A l’issue de cette séquence, vous êtes capable de créer ou de cloner un dépôt en fonction du contexte. Vous êtes en mesure de manipuler les branches afin de conserver votre branche principale stable.
- Initialiser un dépôt Git local
- Cloner un dépôt Git distant
- Le principe des branches Git
Pratiquer GIT au quotidien
A l’issue de cette séquence, vous êtes capable de réaliser efficacement vos commits, nettoyer votre historique et fusionner vos branches locales.
- Commit, Revert, Reset : gérer les commits,
- Rebase, Merge : gérer les fusions,
- Stash : éviter des commits inutiles
- RE-RE-RE : REuse REcorded REsolution éviter les conflits de fusion récurrents,
- Optimiser les commandes avec les raccourcis
Comprendre et utiliser l’historique GIT
A l’issue de cette séquence, vous êtes capable de lire efficacement l’historique git, réparer une anomalie et reformuler ses commits.
- Log : lire l’histoire des commits
- Réécrire les commits
- Reflog : la mémoire de Git
- Bisect Dissect : résoudre un bug
- Tagger
JOUR 2
Utiliser le modèle de branches Git Flow
A l’issue de cette séquence, vous êtes capable de reconnaître l’avantage d’utiliser un modèle de branche « pré programmé » plutôt que d’utiliser les commandes Git classiques pour opérer les mêmes manipulations.
- Initialiser git flow dans un projet,
- Démarrer, terminer une « feature »
- Démarrer, terminer une « release »
- Démarrer, terminer un « hotfix »
Travailler en équipe avec GIT
A l’issue de cette séquence, vous êtes capable de collaborer sur un projet distant, faire les dépôts de manière correctes et récupérer proprement les incréments déposés.
- Créer un dépôt distant sur Github,
- Gestion des utilisateurs,
- Clone ou Fork : cas d’utilisation,
- Fetch, Pull, Push : gérer le dépôt distant,
- Cherry-Pick : éviter des back-merges complets,
- Pull-requests : revue de code et fusion
Utiliser les sous-modules et les sous-arbres
A l’issue de cette séquence, vous êtes capable de reconnaître les cas d’utilisation spécifiques conduisant à une organisation Git sous la forme de sous-modules ou subtrees.
- Cas d’utilisation
- Travailler avec des SubModules
- Travailler avec des Subtree
Utiliser les hooks pour créer un CI / CD
A l’issue de cette séquence, vous êtes capable de reconnaître les hooks utiles dans le cycle de vie de Git pour automatiser certaines tâches.
- Présentation des hooks git,
- Implémenter un CD avec post-receive