L’environnement

Créé par Linux Torvalds, créateur de Linux, Git est un logiciel libre de gestion de version de programmes. Massivement répandu, il est aujourd’hui une référence pour des millions de développeurs et développeuses, qui travaillent en équipe sur un projet de développement.

Objectifs pédagogiques

À l’issue de la formation, les stagiaires seront capables de :

  • Appréhender la philosophie de Git
  • Utiliser Git au quotidien
  • Gérer le versioning de leur application
  • Mettre en place un développement collaboratif

Public concerné

Ingénieurs, développeurs, scientifiques, enseignants.

Prérequis

Avoir une pratique du développement logiciel ou connaître un langage de programmation. Une connaissance des commandes de base UNIX est conseillée. Un questionnaire de pré-formation est proposé pour valider l’adéquation entre le besoin et la formation.

Programme de la formation

Introduction

  • Versionner son code, quésaco ?
  • Pourquoi vous devez versionner votre code ?
  • Quelles solutions pour versionner son code ?
  • Caractéristiques de Git
  • Installer Git
  • Configurer Git

Premiers pas

  • Un premier dépôt Git
  • Git workflow
  • Effectuer ses premiers commits
  • Afficher les modifications
  • Explorer un commit
  • Annuler un add et un commit
  • Aller plus loin dans l’affichage des modifications
  • GitKraken et VS Code : add et commit
  • Ignorer des fichiers

Explorer et travailler avec l’historique

  • Afficher et filtrer l’historique
  • Explorer un commit
  • Les différences entre commits
  • Afficher les contributeurs au projet
  • Trouver l’auteur qui a écrit certaines lignes
  • Se placer dans un état précédent
  • Récupérer des fichiers supprimés
  • Trouver des bugs
  • Taguer des commits
  • VS Code et GitKraken : naviguer dans l’historique

 Travailler avec des branches

  • Qu’est-ce qu’une branche ?
  • Créer, changer et comparer des branches
  • Changer de branches sans committer
  • Fusionner des branches
  • Les branches et le remote
  • Afficher les branches mergées et non-mergées
  • Conflits
  • Abandonner un merge
  • Annuler un merge
  • Squash merging
  • Rebasing
  • Cherry picking
  • Prendre un fichier dans une autre branche
  • Les branches dans VS Code et dans GitKraken

Collaborer avec GitHub

  • Qu’est-ce que GitHub ?
  • Workflow
  • Création d’un compte sur GitHub
  • Collaborer
  • Cloner un repository
  • Connecter et récupérer le remote
  • Envoyer ses modifications sur le remote repository
  • Partager les tags
  • Les branches et le remote
  • Push and pull
  • Issues
  • Contribuer à un projet Open Source