Systems of Version Control (Systèmes de Gestion de Versions)

Institut Supérieur des Études Technologiques
Page 1 sur 21Lecteur de document UniversityLib

Systems of Version Control (Systèmes de Gestion de Versions)

Institut Supérieur des Études Technologiques · Software Engineering · notes

Voir tous les documents en gestion et économie

Systèmes de gestion de

versions (SGV)

Git & GitHub

ISET Bizerte -Depatement TI

Présenté par : Najla Allouche

Plan

Introduction aux Systèmes de Gestion de Versions

Intérêt des Systèmes de Gestion de Versions

Le protocole git

GitHub

Intégration du protocole Git à l’IDE

Intégration du protocole Git aux outils de gestion de

projet agile

2/21

Introduction

aux Systèmes

de Gestion de

Versions

Intérêt des

Systèmes de

Gestion de

Versions

Le protocole git

GitHub

Intégration du

protocole Git à

l’IDE

Intégration du

protocole Git

aux outils de

gestion de

projet agile

Introduction aux Systèmes de Gestion de

Versions

o La gestion de versions (en anglais “Version

Control”) permet de gérer multiples

versions d’un document, d’un site Web,

d’un programme etc.

o L’utilisation d’un tel système est essentielle

dans un projet en équipe, mais peut aussi

être utile dans un projet individuel.

3/21

Introduction

aux Systèmes

de Gestion de

Versions

Intérêt des

Systèmes de

Gestion de

Versions

Le protocole git

GitHub

Intégration du

protocole Git à

l’IDE

Intégration du

protocole Git

aux outils de

gestion de

projet agile

Introduction aux Systèmes de Gestion de

Versions

Décentralisé

Git, Mercurial…

Centralisé

Team Fondation Server, CVS,SVN

File Base

Batch File, Visual Source Safe

Aucun Contrôle

Gestion des sources par backup

4/21

Introduction

aux Systèmes

de Gestion de

Versions

Intérêt des

Systèmes de

Gestion de

Versions

Le protocole git

GitHub

Intégration du

protocole Git à

l’IDE

Intégration du

protocole Git

aux outils de

gestion de

projet agile

Intérêt des Systèmes de Gestion de

Versions

• Qui a modifié pour la dernière fois ce fichier ?

• Quelles sont les différences entre 2 versions

de ce fichier ?

• Quelle est la version du 02 novembre 2017?

5/21

Introduction

aux Systèmes

de Gestion de

Versions

Intérêt des

Systèmes de

Gestion de

Versions

Le protocole git

GitHub

Intégration du

protocole Git à

Publicité

l’IDE

Intégration du

protocole Git

aux outils de

gestion de

projet agile

Intérêt des Systèmes de Gestion de

Versions

Et encore:

Le travail collaboratif

• Gestion des branches

mener en parallèle plusieurs versions

(stable, testing, ...)

• Sécurité

Intégrité, Disponibilité, Confidentialité

6/21

Introduction

aux Systèmes

de Gestion de

Versions

Intérêt des

Systèmes de

Gestion de

Versions

Le protocole git

GitHub

Intégration du

protocole Git à

l’IDE

Intégration du

protocole Git

aux outils de

gestion de

projet agile

Définition

Avantages

Architecture

Fonctionnement

Le protocole Git

Git est un logiciel de gestion de versions

décentralisé. Il est open source, et a été

créé aux alentours de 2005 par Linus

Torvalds, qui est …., tout d’abord pour son

usage personnel et finir pour l’usage

public.

7/21

Introduction

aux Systèmes

de Gestion de

Versions

Intérêt des

Systèmes de

Gestion de

Versions

Le protocole git

GitHub

Intégration du

protocole Git à

l’IDE

Intégration du

protocole Git

aux outils de

gestion de

projet agile

Définition

Avantages

Architecture

Fonctionnement

Le protocole Git

Les avantages de Git:

o Simplicité d’utilisation, notamment couplé à

une interface graphique comme GitHub.

o Rapidité

o Disponibilité : Git ne requiert pas de

serveur distant pour fonctionner

o Gratuité

o Open source

8/21

Introduction

aux Systèmes

de Gestion de

Versions

Intérêt des

Systèmes de

Gestion de

Versions

Le protocole git

GitHub

Intégration du

protocole Git à

l’IDE

Intégration du

protocole Git

aux outils de

gestion de

projet agile

Définition

Avantages

Architecture

Fonctionnement

Le protocole Git

Commit

Checkout

Diff

Local

Repository

Puch

Fetch

Publicité

Remote

Repository

Workspace

9/21

Introduction

aux Systèmes

de Gestion de

Versions

Intérêt des

Systèmes de

Gestion de

Versions

Le protocole git

GitHub

Intégration du

protocole Git à

l’IDE

Intégration du

protocole Git

aux outils de

gestion de

projet agile

Définition

Avantages

Architecture

Fonctionnement

Les commits

o Lorsque vous avez fait des modifications

1/5

dans votre code, il faut les publier (faire un

« commit »)

o Un commit doit obligatoirement être

accompagné d’une courte description (de

préférence en anglais, et en quelques

mots)

o « Adds robots.txt »

o « Modification de la ligne 75 du fichier

System/Main.php »

10/21

Introduction

aux Systèmes

de Gestion de

Versions

Intérêt des

Systèmes de

Gestion de

Versions

Le protocole git

GitHub

Intégration du

protocole Git à

l’IDE

Intégration du

protocole Git

aux outils de

gestion de

projet agile

Définition

Avantages

Architecture

Fonctionnement

Les branches

2/5

La création d’une nouvelle branche est particulièrement utile

lorsque plusieurs versions d’une même application cohabitent,

ou lorsque l’on veut développer une nouvelle fonctionnalité

nécessitant des changements majeurs dans le code

11/21

Introduction

aux Systèmes

de Gestion de

Versions

Intérêt des

Systèmes de

Gestion de

Versions

Le protocole git

GitHub

Intégration du

protocole Git à

l’IDE

Intégration du

protocole Git

aux outils de

gestion de

projet agile

Définition

Avantages

Architecture

Fonctionnement

Les conflits

3/5

o Parfois, il peut arriver que l’une de vos

modifications entre en conflit avec les

modifications de quelqu’un d’autre, et que

Git ne soit pas capable de fusionner

automatiquement vos modifications

o Dans ce cas, il sera demandé de corriger

manuellement le conflit en allant éditer le(s)

fichier(s) concerné(s)

12/21

Introduction

aux Systèmes

de Gestion de

Versions

Intérêt des

Systèmes de

Gestion de

Publicité

Versions

Le protocole git

GitHub

Intégration du

protocole Git à

l’IDE

Intégration du

protocole Git

aux outils de

gestion de

projet agile

Définition

Avantages

Architecture

Fonctionnement

Exemple de conflits

4/5

13/21

Introduction

aux Systèmes

de Gestion de

Versions

Intérêt des

Systèmes de

Gestion de

Versions

Le protocole git

GitHub

Intégration du

protocole Git à

l’IDE

Intégration du

protocole Git

aux outils de

gestion de

projet agile

Définition

Avantages

Architecture

Fonctionnement

Installation

5/5

Pour installer Git, il suffit simplement de

télécharger l’installer sur le site officiel de

Git :

https://git-scm.com/downloads

14/21

Introduction

aux Systèmes

de Gestion de

Versions

Intérêt des

Systèmes de

Gestion de

Versions

Le protocole git

Définition

Configuration

Fonctionnement

GitHub

o une communauté

o regroupe plus de 11 millions d’utilisateurs et plus de 28

millions de projets créé sur GitHub

o permet de faciliter la collaboration de développeurs du

GitHub

monde entier sur un même projet

o une société d’hébergement

Intégration du

protocole Git à

l’IDE

Intégration du

protocole Git

aux outils de

gestion de

projet agile

o propose des solutions de gestion de développement de

logiciels, basées sur le protocole Git

o l’utilisation est gratuite pour le développement open

source (et donc public)

o GitHub a développé un logiciel « GitHub Desktop », qui

permet une gestion simple des projets sous Git.

15/21

Introduction

aux Systèmes

de Gestion de

Versions

Intérêt des

Systèmes de

Gestion de

Versions

Le protocole git

GitHub

Intégration du

protocole Git à

l’IDE

Intégration du

protocole Git

aux outils de

gestion de

projet agile

Définition

Configuration

Fonctionnement

Démo

16/21

Introduction

aux Systèmes

de Gestion de

Publicité

Versions

Intérêt des

Systèmes de

Gestion de

Versions

Le protocole git

GitHub

Intégration du

protocole Git à

l’IDE

Intégration du

protocole Git

aux outils de

gestion de

projet agile

Définition

Configuration

Fonctionnement

Démo

17/21

Introduction

aux Systèmes

de Gestion de

Versions

Intérêt des

Systèmes de

Gestion de

Versions

Le protocole git

GitHub

Intégration du

protocole Git à

l’IDE

Intégration du

protocole Git

aux outils de

gestion de

projet agile

GitHub pour l’éducation

18/21

Introduction

aux Systèmes

de Gestion de

Versions

Intérêt des

Systèmes de

Gestion de

Versions

Le protocole git

GitHub

Intégration du

protocole Git à

l’IDE

Intégration du

protocole Git

aux outils de

gestion de

projet agile

Intégration du protocole Git à l’IDE

19/21

Introduction

aux Systèmes

de Gestion de

Versions

Intérêt des

Systèmes de

Gestion de

Versions

Le protocole git

GitHub

Intégration du

protocole Git à

l’IDE

Intégration du

protocole Git

aux outils de

gestion de

projet agile

Intégration du protocole Git aux outils de

gestion de projet agile

20/21

Introduction

aux Systèmes

de Gestion de

Versions

Intérêt des

Systèmes de

Gestion de

Versions

Le protocole git

Merci pour votre attention !

GitHub

Sources :

Intégration du

protocole Git à

l’IDE

Intégration du

protocole Git

aux outils de

gestion de

projet agile

o https://en.wikipedia.org/wiki/Version_control

o https://en.wikipedia.org/wiki/Git_(software)

o https://git-scm.com/doc

o https://help.github.com/

o https://training.github.com/

21/21