Ceci est une ancienne révision du document !
Table des matières
Séminaire Git Avancé
Le Service d'Expérimentation et de Développement (SED) du centre Inria Grenoble Rhône-Alpes s'associe au réseau ARAMIS pour vous proposer, le mardi 24 mars 2020 un séminaire d'une journée sur des aspects avancés du gestionnaire de versions git.
L'objectif est de maîtriser un ensemble de fonctionnalités avancées de Git afin de pouvoir tirer pleinment parti de cet outil et pouvoir adapter son utilisation en fonction du contexte.
Plus précisément, ce séminaire vous aidera à :
- Comprendre le fonctionnement interne de git pour mieux appréhender l'outil dans son ensemble
- Connaître un large spectre de fonctionnalités offertes par git
- Maîtriser une utilisation raisonnablement complexe de ces outils
Au cours de ce séminaire, nous alternerons présentation et exercices d'application sur machine.
Ce séminaire s'adresse avant tout à un public de programmeurs de tous horizons (ingénieurs, doctorants, chercheurs, …) mais est ouvert à tous.
Seule contrainte forte : Les participants doivent avoir une bonne maîtrise des fondamentaux de l'outil Git (~contenu du séminaire d'introduction à git)
<note warning>Il n'y aura ni visio, ni vidéo car la salle réservée n'est pas équipée.</note>
Intervenants
La journée sera animée par :
- David Parsons, Ingénieur de Recherche Inria
Supports
Pré-requis
- Amener son portable (un guide d'installation des outils nécessaires sera communiqué aux participants)
Programme
- Rappels
- Généralités (dont working directory / staging area / local repository / remote repository)
- Gestion des conflits
- Choses à savoir
- Configurer git
- Detached HEAD ?
- Remote tracking branches et Upstream branches
- Plongée dans les entrailles de git
- Petits outils intéressants
- Patches
- Cherry-picking
- Commits “partiels”
- Stash
- Bisect
- Réécrire l'histoire
- Commit –amend
- Rebase
- Discussion : pull vs fetch + merge ou rebase
- Fast-forward et true-merge
- Rebase interactif
- Undoing things
- Unstage
- “Unmodify” a file
- Undo a commit
- Reset
- Filter-branch (simple évocation)
- Gérer les dépôts distants (remotes)
- Autres outils d'intérêt
- git svn
- git submodules et git subrepo
- git annex et git lfs
- hooks
- rerere
Ressources
- documentation de référence : https://git-scm.com/book/fr/v2, https://git-scm.com/book/en/v2
- pour expérimenter visuellement les commandes de branchement, de merge et de rebase : http://learngitbranching.js.org/
Inscription
<note important>L'accès à l'atelier est limité à 30 personnes, merci de vous inscrire ici : TODO</note>
<note warning>Les demandes d'ordre de mission et les éventuels frais de mission seront à la charge des participants</note>
Date : mardi 24 mars 2020 de 9h00 à 17h00
Lieu :
<note important>Le lieu est le Centre de Calcul de l'IN2P3/CNRS sur le campus de la Doua à Villeurbanne.
IL EST NÉCESSAIRE DE SE MUNIR D'UNE PIÈCE D'IDENTITÉ. </note>
Repas
Le repas sera probablement pris en charge par le Service d'Expérimentation et de Développement du centre Inria Grenoble Rhône-Alpes (à confirmer)