git l'essentiel
DESCRIPTION
C'est une présentation qui donne les concepts de base pour démarrer GITTRANSCRIPT
![Page 1: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/1.jpg)
14/04/23
GIT – L'essentiel
![Page 2: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/2.jpg)
2
Plan
Introduction Les Bases Gestion des branches Git Workflow
![Page 3: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/3.jpg)
3
GIT C'est quoi ?
Système de gestion de versions libre et open source (licence publique générale GNU )
Créé par Linus Torvalds « créateur du noyau Linux »
Essentiellement pour les développeurs (code source)
![Page 4: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/4.jpg)
4
Pourquoi GIT ?
SCM distribué Copie en local tout le répo avec l'historique Presque toutes les opérations sont locales GIT gère des photos instantanées du
workspace (fichiers non modifiés ne sont pas restockés)
Git garantit l'intégrité des données Gestion de branche très souple
![Page 5: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/5.jpg)
5
Terminologie master: branche principale origin: designe toujours le serveur à partir duquel vous
avez cloné le projet clone: copier en local un repo distant commit: soumettre dans le repo local fetch/pull: mise à jour du repo local (pull = fetch +
merge) push: soumettre dans le repo distant head: référence vers le nœud auquel pointe notre
workspace SHA: chaque commit est référencé par une clé unique
![Page 6: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/6.jpg)
6
Installation GIT
Binaire à dézipper / Installeur sous windows / yum install / apt-get install / ...
Ajout dans le PATH du système d'exploitation
Vérification de la bonne installation
![Page 7: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/7.jpg)
7
Configuration GIT /etc/gitconfig : les conf pour tous les
utilisateurs du système (git config --system)
~/.gitconfig : spécifique à chaque utilisateur
(git config --global)
.git/config : spécifique au projet courant
Pour windows : .gitconfig est situé dans
C:\Documents and Settings\$User et /etc/gitconfig du répertoire d'installation de GIT
![Page 8: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/8.jpg)
8
Configurer GIT 1/3
![Page 9: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/9.jpg)
9
Configurer GIT 2/3
![Page 10: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/10.jpg)
10
Configurer GIT 3/3
Comment créer un Alias ?
![Page 11: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/11.jpg)
11
Git Ignore
Fichier déclaratif Permet d'ignorer le commit de fichiers, pattern,
répertoire, ... S'appelle .gitignore et se situe à la racine
d'un projet
![Page 12: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/12.jpg)
12
Git – Les bases (1/2)
![Page 13: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/13.jpg)
13
Git – les bases (2/2)
Les fichiers sous GIT ont 3 états : Modifié (le fichier est modifié mais n'est pas stocké en BD locale) Indexé (il est dans la staging area) Validé (stocké en BD locale)
![Page 14: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/14.jpg)
14
Démarrer avec GIT (1/2) Création d'un répo
![Page 15: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/15.jpg)
15
Démarrer avec GIT (2/2) Récupération d'un répo
![Page 16: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/16.jpg)
16
Workspace GIT
config: options de conf pour le workspace hooks : scripts de procédures automatiques objects : contenu de la base de données git refs : pointeurs qui référencent les commits
![Page 17: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/17.jpg)
17
Connaître l'état de son répo
![Page 18: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/18.jpg)
18
Ajout des fichiers sous contrôle GIT
![Page 19: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/19.jpg)
19
Comitter un fichier (repo local)
![Page 20: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/20.jpg)
20
Visualiser les modifications
Comparer les modifications introduites par rapport au « staging area »
![Page 21: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/21.jpg)
21
Historique des commits
![Page 22: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/22.jpg)
22
Corriger les erreurs 1/2
Rectifier un commit (ajout, suppression, modif, changement commentaire)
Enlever un fichier de l'index (staging area)
![Page 23: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/23.jpg)
23
Corriger les erreurs 2/2
Reprendre un fichier du repo
![Page 24: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/24.jpg)
24
Travailler avec un repo distant
Lister les repos distants
Récupérer des changements sans merge
![Page 25: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/25.jpg)
25
Push sur un repo distant
Commit vers le repo distant
![Page 26: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/26.jpg)
26
Revenir à un commit précis
![Page 27: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/27.jpg)
27
Rollback
![Page 28: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/28.jpg)
28
Blame
Trouver le commit qui a introduit un problème
![Page 29: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/29.jpg)
29
Stash
Sauvegarder un travail incomplet
![Page 30: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/30.jpg)
30
Gestion des branches
![Page 31: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/31.jpg)
31
Git Merge
![Page 32: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/32.jpg)
32
Gestion des conflits
![Page 33: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/33.jpg)
33
Rebase vs Merge
Merge : Fusion classique entre 2 branches Rebase : Récupérer le diff introduit dans une
branche quelconque et le rapatrier dans sa branche
Conseil : utiliser Rebase uniquement pour ses branches privées locales (afin de la garder à jour)
![Page 34: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/34.jpg)
34
Outillage
Client GIT : Source Tree Gestionnaire de repo : Stash
![Page 35: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/35.jpg)
35
Git Workflow
![Page 36: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/36.jpg)
36
Références
Git pro « Scott Chacon » Linux pratique DZone
![Page 37: Git l'essentiel](https://reader036.vdocuments.net/reader036/viewer/2022081504/55918a861a28ab6b148b45b0/html5/thumbnails/37.jpg)
37