22

Introduction SVN

Embed Size (px)

DESCRIPTION

C'est un logiciel.Il permet de conserver l'intégralité des versions d'un fichier oud'un répertoire.Il permet de connaître toute l'historique des modifications.

Citation preview

Page 1: Introduction SVN

Gestion de versions

Introduction à Subversion

Loïc Gouarin

1Laboratoire de mathématiques d'Orsay

12-14 décembre 2011

Loïc Gouarin Gestion de versions Introduction à Subversion

Page 2: Introduction SVN

Plan

1 Présentation générale

2 Modèle client-serveur

3 Modèle distribué

4 Subversion

5 Références

Loïc Gouarin Gestion de versions Introduction à Subversion

Page 3: Introduction SVN

Présentation générale

Plan

1 Présentation générale

2 Modèle client-serveur

3 Modèle distribué

4 Subversion

5 Références

Loïc Gouarin Gestion de versions Introduction à Subversion

Page 4: Introduction SVN

Présentation générale

Qu'est-ce qu'un gestionnaire de versions ?

C'est un logiciel.

Il permet de conserver l'intégralité des versions d'un �chier ou

d'un répertoire.

Il permet de connaître toute l'historique des modi�cations.

Il est généralement constitué

d'un dépôt (local, distant) : contenant toutes les versions,de copies de travail : contenant les modi�cations d'unutilisateur qui seront ensuite incluses dans le dépôt.

Loïc Gouarin Gestion de versions Introduction à Subversion

Page 5: Introduction SVN

Présentation générale

Pourquoi se servir d'un gestionnaire de versions ?

conserver l'historique

possibilité de revenir en arrière

travail collaboratif

Loïc Gouarin Gestion de versions Introduction à Subversion

Page 6: Introduction SVN

Présentation générale

Structuration générale

Dépôt local ou distant répertoriant l'ensemble des

modi�cations

Arborescencedepot

trunk

branches

b1

b2

tags

Loïc Gouarin Gestion de versions Introduction à Subversion

Page 7: Introduction SVN

Présentation générale

Structuration générale

Loïc Gouarin Gestion de versions Introduction à Subversion

Page 8: Introduction SVN

Présentation générale

Structuration générale

Les branches servent à

corriger un problème sur une ancienne version,développer 2 idées en parallèle,gérer sa propre version du logiciel,fusionner après une divergence.

Les tags

sont des marques symboliques sur une révision,permettent de dé�nir les versions du projet,permettent de nommer des branches.

Loïc Gouarin Gestion de versions Introduction à Subversion

Page 9: Introduction SVN

Modèle client-serveur

Plan

1 Présentation générale

2 Modèle client-serveur

3 Modèle distribué

4 Subversion

5 Références

Loïc Gouarin Gestion de versions Introduction à Subversion

Page 10: Introduction SVN

Modèle client-serveur

Qu'est-ce que c'est ?

Loïc Gouarin Gestion de versions Introduction à Subversion

Page 11: Introduction SVN

Modèle client-serveur

Logiciels

CVS

Subversion

Loïc Gouarin Gestion de versions Introduction à Subversion

Page 12: Introduction SVN

Modèle distribué

Plan

1 Présentation générale

2 Modèle client-serveur

3 Modèle distribué

4 Subversion

5 Références

Loïc Gouarin Gestion de versions Introduction à Subversion

Page 13: Introduction SVN

Modèle distribué

Qu'est-ce que c'est ?

Loïc Gouarin Gestion de versions Introduction à Subversion

Page 14: Introduction SVN

Modèle distribué

Logiciels

Git

Mercurial

Bazaar

Loïc Gouarin Gestion de versions Introduction à Subversion

Page 15: Introduction SVN

Subversion

Plan

1 Présentation générale

2 Modèle client-serveur

3 Modèle distribué

4 Subversion

5 Références

Loïc Gouarin Gestion de versions Introduction à Subversion

Page 16: Introduction SVN

Subversion

conçu pour remplacer CVS

projet initié en 2000 par CollabNet

le 14 février 2010, SVN est devenu o�ciellement un logiciel de

la Fondation Apache

Loïc Gouarin Gestion de versions Introduction à Subversion

Page 17: Introduction SVN

Subversion

Accès à un dépôt

file:// : accès direct au dépôt sur un disque local,

http:// : accès via le protocole WebDAV à un serveur Apache

con�guré pour Subversion,

https:// : identique à http://, mais avec chi�rement SSL,

svn:// : accès via un protocole personnalisé à un serveur

svnserve,

svn+ssh:// : identique à svn://, mais à travers un tunnel

SSH.

Loïc Gouarin Gestion de versions Introduction à Subversion

Page 18: Introduction SVN

Subversion

Premières commandes

Initialisation du dépôt

L'initialisation se fait sur la machine accueillant le dépôt via la

commande svnadmin

terminal$ svnadmin create /chemin/du/dépôt

Importation initiale

terminal$ svn import monprojet type_accès://chemin/du/dépôt \

-m "import initial"

Loïc Gouarin Gestion de versions Introduction à Subversion

Page 19: Introduction SVN

Subversion

Premières commandes

Extraction initiale

terminal$ svn checkout type_accès://chemin/du/dépôt

Obtenir de l'aide

terminal$ svn help

terminal$ svn help command

Loïc Gouarin Gestion de versions Introduction à Subversion

Page 20: Introduction SVN

Subversion

Commandes utilisées pendant le cycle du développement

mettre à jour une copie de travail

svn update

e�ectuer des changements dans l'arborescence

svn add, svn delete, svn copy, svn move, svn mkdir

examiner les changements e�ectués

svn status, svn diff

annuler des changements

svn revert

résoudre des con�its

svn update, svn resolve, svn resolved

propager des changements

svn commit

fusionner des branches

svn merge

Loïc Gouarin Gestion de versions Introduction à Subversion

Page 21: Introduction SVN

Références

Plan

1 Présentation générale

2 Modèle client-serveur

3 Modèle distribué

4 Subversion

5 Références

Loïc Gouarin Gestion de versions Introduction à Subversion

Page 22: Introduction SVN

Références

site de Subversion

site de Git

Systèmes de gestion de code source par Matthieu Herrb

Introduction à Subversion

Gestion de versions avec Subverison

Loïc Gouarin Gestion de versions Introduction à Subversion