git l'essentiel

37
11/06/22 GIT – L'essentiel

Upload: riadh-mnasri

Post on 30-Jun-2015

194 views

Category:

Software


8 download

DESCRIPTION

C'est une présentation qui donne les concepts de base pour démarrer GIT

TRANSCRIPT

Page 1: Git l'essentiel

14/04/23

GIT – L'essentiel

Page 2: Git l'essentiel

2

Plan

Introduction Les Bases Gestion des branches Git Workflow

Page 3: Git l'essentiel

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

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

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

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

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

8

Configurer GIT 1/3

Page 9: Git l'essentiel

9

Configurer GIT 2/3

Page 10: Git l'essentiel

10

Configurer GIT 3/3

Comment créer un Alias ?

Page 11: Git l'essentiel

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

12

Git – Les bases (1/2)

Page 13: Git l'essentiel

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

14

Démarrer avec GIT (1/2) Création d'un répo

Page 15: Git l'essentiel

15

Démarrer avec GIT (2/2) Récupération d'un répo

Page 16: Git l'essentiel

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

17

Connaître l'état de son répo

Page 18: Git l'essentiel

18

Ajout des fichiers sous contrôle GIT

Page 19: Git l'essentiel

19

Comitter un fichier (repo local)

Page 20: Git l'essentiel

20

Visualiser les modifications

Comparer les modifications introduites par rapport au « staging area »

Page 21: Git l'essentiel

21

Historique des commits

Page 22: Git l'essentiel

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

23

Corriger les erreurs 2/2

Reprendre un fichier du repo

Page 24: Git l'essentiel

24

Travailler avec un repo distant

Lister les repos distants

Récupérer des changements sans merge

Page 25: Git l'essentiel

25

Push sur un repo distant

Commit vers le repo distant

Page 26: Git l'essentiel

26

Revenir à un commit précis

Page 27: Git l'essentiel

27

Rollback

Page 28: Git l'essentiel

28

Blame

Trouver le commit qui a introduit un problème

Page 29: Git l'essentiel

29

Stash

Sauvegarder un travail incomplet

Page 30: Git l'essentiel

30

Gestion des branches

Page 31: Git l'essentiel

31

Git Merge

Page 32: Git l'essentiel

32

Gestion des conflits

Page 33: Git l'essentiel

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

34

Outillage

Client GIT : Source Tree Gestionnaire de repo : Stash

Page 35: Git l'essentiel

35

Git Workflow

Page 36: Git l'essentiel

36

Références

Git pro « Scott Chacon » Linux pratique DZone

Page 37: Git l'essentiel

37