Formations Outils et bases de données

Kiwi standing on oval

Formation GIT avancé

Cette formation GIT associe théorie et pratique pour comprendre le modèle et l’architecture de ce logiciel. Vous apprendrez à le
configurer pour l'utiliser dans un contexte de gestion quotidienne des sources d'un projet web.


Les utilisateurs ayant déjà utilisé un gestionnaire de version (CVS, SVN, Sourcesafe) pourront évaluer pleinement la puissance de Git
par rapport à leur outil !

Objectifs pédagogiques

  • Savoir déposer du code sur un dépôt distant
  • Être capable de mettre à jour le code sur un dépôt distant
  • Savoir revenir à une version précédente du code
  • Être capable de travailler à plusieurs et gérer les conflits
  • Savoir utiliser les branches
  • Être autonome dans la résolution d’un problème sur Git

Formation GIT avancé en détail

Programme

1. Notions

  • git status :

     - working directory
     - index / cache / staging
     - repository
     - checksum, sha1, hash, fingerprint
     - refs, HEAD

2. Création

  • git init : - `git init --bare`
  • gitignore
  • git clone :

     - `git clone --bare`
     - `git clone --depth=`
     - `git clone –shallow-since=`

3. Index

  • git add :

     - `git add --patch`
     - `git add -A|--all`

  • git rm :

     - `git rm -f`
     - `git rm --cached`

  • git commit :

     - `git commit -a`
     - `git commit -m`
     - `git commit -am`
     - `git commit –amend`

4. Visualiser

  • git show :

     - `git show --summary`
     - `git show --show-signature`

  • git log :

     - `git log --graph`
     - `git log --all`
     - `git log `

5. Manipuler

  • git reset :

     - `git reset --soft `
     - `git reset --mixed `
     - `git reset --hard `
     - `git reset --patch `

  • git checkout :

     - `git checkout -- `
     - `git checkout --detach`
     - `git checkout –patch`

  • Nouvelles fonctionnalités :

     - `git switch`
     - `git restore`

  • git branch :

     - `git branch -a`
     - `git branch -r`
     - `git branch -v`
     - `git branch -d`
     - `git branch -D`
     - `git branch --merged`
     - `git branch --no-merged`

  • - `git merge` - *fast forward* - `git merge --ff-only` - `git merge --no-ff` - `git merge --no-commit`
  • git cherry-pick :

     - `git cherry-pick –no-commit`

  • git revert :

     - `git revert –no-commit`

  • git rebase :

     - `git commit --fixup=`
     - `git commit --squash=`
     - `git rebase -i –autosquash`
     - `git rebase --onto `
 

6. Remote

  • git remote :

     - `git remote -v`
     - `git remote add `
     - `git remote set-url `

  • git push :

     - `git push :`

  • git fetch :

     - `git fetch `
     - `git fetch --all`

  • git pull :

     - `git pull --rebase`
     - `git pull --ff-only`
     - `git pull –no-ff`

7. Recherche de bug

  • git bisect :

     - `git bisect good`
     - `git bisect bad`

8. Pratique

  • git grep …
  • git stash : - `git stash` - `git stash pop` - `git stash list`

9. Pour aller plus loin

  • git submodule : - `git submodule --init` - `git submodule --update` - `git submodule sync` - `git clone --recursive`
  • `git archive`
  • `git subtree`

Public et pré-requis

Public

Développeurs débutants ou confirmés

Pré-requis

Être à l'aise avec un terminal est un plus.

Personne en situation de handicap

Pour toutes questions relatives à l’accueil d’un participant présentant un handicap, merci de nous contacter préalablement avant toute inscription

Ingénierie pédagogique

Moyens pédagogiques et techniques

  • Les supports de cours (slides) seront disponibles en ligne et distribués en début de formation (à l'aide d'un lien vers notre outil interne ou d'une version numérisée), puis fournis au format électronique à la fin de la formation
  • Une salle de formation équipée d'une connexion Internet, d'un vidéoprojecteur, paperboard. Ou une salle virtuelle pour les formations à distance (FOAD).
  • Un ordinateur par stagiaire avec un système d'exploitation installé et les outils nécessaires.

Modalités de suivi de l'exécution du programme

  • Durant la formation: alternance d'apports théoriques (30% du cours), d’exercices pratiques et de mise en situation sous forme de travaux pratiques corrigés avec l’expert-formateur
  • En fin de formation: évaluation à chaud sur l'atteinte des objectifs pédagogiques sous forme de tour de table et de test de connaissances, d'exercices, de QCM

Moyens d'encadrement

Formation assurée par un expert-formateur Python ayant une expérience significative avec un framework Python

Témoignage