====== Journée Git avancé ======
Dans le cadre du réseau ARAMIS, nous vous proposons le mardi 20 juin 2017 une journée sur l'utilisation avancée de git.
Cette journée s'adresse aux personnes ayant déjà assimilé les bases de Git !
Nous sommes nombreux à être passés au gestionnaire de versions distribué git et à avoir cherché comment se sortir d'une mauvaise manipulation, à ne pas avoir utilisé telle ou telle commande plus avancée, ...
Le but de cette journée PARTICIPATIVE est de revenir sur les mécanismes internes de Git et d'échanger sur les usages avancés à partir de nos expériences respectives.
Il y aura des présentations, des parties en TP (manipulation de branches, conflits, merge, ...) et des parties en démonstrations simples.
Il n'y aura ni visio, ni vidéo car la salle réservée n'est pas équipée.
===== Intervenants =====
La journée sera animée par :
* David Parsons, Ingénieur INRIA
* Foudil Brétel, Ingénieur au CC-IN2P3
===== Pré-requis =====
* amenez votre portable avec git installé
* créez-vous un compte sur le GitLab de l'IN2P3 : https://gitlab.in2p3.fr/users/sign_in (il y a un bouton Shibboleth si vous êtes académiques ou IN2P3)
===== Supports =====
==== Slides du TP ====
http://parsons.eu/git/aramis/
===== Programme =====
| Matin ^ 9h00 - 9h30 | Accueil | |
| ::: ^ 9h30 - 10h30 | Mécanismes internes de git | Foudil Brétel, CC-IN2P3 |
| ::: ^ 10h30 - 11h00 | Pause café | |
| ::: ^ 11h00 - 12h30 | Usages avancés de git | David Parsons, INRIA |
| Midi ^ 12h30 - 13h30 | Pause repas | |
| Après-midi ^ 13h30 - 15h00 | Usages avancés de git | David Parsons, INRIA |
| ::: ^ 15h00 - 17h00 | Échanges - discussions ouvertes | |
==== Mécanismes internes de git ====
//Foudil Brétel//
- git objects (blob, tree, commit)
- index
- références, branches, remote
==== Usages avancés de git ====
//David Parsons//
- Rappels
* Working directory / staging area / local repository / remote repository
* Les branches
* Gestion des conflits
* Interactions avec un remote
- Stash
- Commits partiels
- Rewriting History : rebase (simple)
- Discussion : pull versus fetch & merge ou rebase
- Les undos : reset, checkout, revert (e.g. comment se récupérer si on a commité dans la mauvaise branche ?)
- Partage d'expérience (participatif) : multiple remotes, pull requests
- Tout savoir sur le rebase + rebase interactif (squash, fixup) avec commit --amend au passage
- Cherry-picking
- git bisect
- git subrepo
- Hooks : qu'es aquò ?
- git annex pour les gros fichiers : principe, mise en oeuvre (théorique) et perspectives
===== 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 =====
L'accès à l'atelier est **limité à 30 personnes**, merci de vous **inscrire** via https://groupes.renater.fr/reunion/foodle/Git-avance-592c4
Les frais de mission et demandes d'ordre de mission seront à la charge des participants
**Date** : mardi 20 juin de 9h30 à 17h00
**Lieu** :
Le lieu est le **Centre de Calcul de l'IN2P3/CNRS** sur le campus de la Doua à Villeurbanne.
http://cc.in2p3.fr/contact/
IL EST NÉCESSAIRE DE SE MUNIR D'UNE PIÈCE D'IDENTITÉ.
===== Repas =====
Une pause sandwich est prévue pour les participants à midi.