• Aucun résultat trouvé

Le gestionnaire de versions CVS

N/A
N/A
Protected

Academic year: 2022

Partager "Le gestionnaire de versions CVS"

Copied!
16
0
0

Texte intégral

(1)

Annexe 2

Le gestionnaire de versions

CVS

(2)

Plan :

 Présentation de CVS

 Logique de fonctionnement

 Étapes de travail avec CVS (commandes)

 Quelques clients CVS

(3)

Présentation de CVS

 CVS (Concurrent Version System) est un système de contrôle de versions de fichiers.

 Développé par Cyclic Software et est sous licence GNU.

 Initialement développé pour Unix, disponible

aussi sur MS Windows®

(4)

Qualités de CVS :

► Aide à gérer le développement d’un projet effectué en parallèle par plusieurs utilisateurs :

 Permet Accès concurrentiel par plusieurs développeurs à un même projet.

► Identifie les changements et les zones de conflit pour lesquelles un arbitrage humain est requis :

 Visualisation des différences qui sont sources de conflits.

► Conserve la trace des modifications successives effectuées sur les projets :

 Archivage et Suivi de l’historique

 Possibilité de retour à des versions anciennes

(5)

Logique de fonctionnement :

Des outils existent:

- RCS (Revisions Control System) - SCCS (Source Code Control)

 Modèle: Lock-Modify-UnlockLock-Modify-Unlock ( Contrôle par verrouillage)

Apparition de CVS :  Modèle : Copy-Modify-Merge. Copy-Modify-Merge.

- CVSS,Subversion, Méta-CVS…

Copy-Modify-Merge ?

Copy-Modify-Merge ?

(6)

Copy-Modify-Merge ?

 CVS enregistre les projets dans un référentiel principal enregistre appelé Repository.

 L’utilisateur effectue une copie du projet dans le copie référentiel, puis la modifie. modifie

 L’utilisateur effectue une synchronisation avec le synchronisation

référentiel pour voir s’il n’y a pas eu entre temps une modification du référentiel.

 CVS gère la nouvelle version en résolvant un certain nouvelle version

nombre de conflits et crée un historique des versions.

(7)

Dépôt et copie de version :

user1 user2 user3

Dépôt de projet(s)

Copie de projet(s)

Standbox

Standbox

Standbox Référentiel

(8)

Étapes de travail avec CVS :

Définition d’un référentiel : variable d’environnement

Ajout de(s) utilisateur(s)

Connexion à un projet

Copie du référentiel

Update

Commit

(9)

Définition d’un référentiel :

set CVSROOT = c:\Dev_CVS\cvsrep set CVSROOT = c:\Dev_CVS\cvsrep

L’ajout de la variable d’environnement se

fait grâce à la commande suivante :

(10)

Ajouter de(s) utilisateur(s) :

cvs passwd –r <utilisateur> -a <password>

cvs passwd –r <utilisateur> -a <password>

Exemple : cvs passwd –r <user1> -a <my_pass>

Exemple : cvs passwd –r <user1> -a <my_pass>

L’ajout d’un nouvel utilisateur se fait

comme suit :

(11)

Connexion au référentiel :

set cvsroot=:<protocole>:<utilisateur>@<hôte>:/CheminProjet set cvsroot=:<protocole>:<utilisateur>@<hôte>:/CheminProjet

Exemple :

Exemple : set cvsroot=:<pserver>:<utilisateur>@<hôte>:/CheminProjetset cvsroot=:<pserver>:<utilisateur>@<hôte>:/CheminProjet

Protocole pserver

Protocole pserver : se connecter en tant que serveur : se connecter en tant que serveur de mot de passe. D’autres protocoles existent :

de mot de passe. D’autres protocoles existent : sserver et ssh.

sserver et ssh.

Pour pointer sur un projet, l’utilisateur se connecte au référentiel en utilisant la

commande :

(12)

Copie du projet :

La commande checkout "co" permet d’avoir une copie locale du projet il y a transfert

d’une copie de ce projet à partir du référentiel dans le répertoire courant :

cvs co <Chemin du projet>

cvs co <Chemin du projet>

Exemple : Cvs co c:\Dev_CVS\projet_cvs

Exemple : Cvs co c:\Dev_CVS\projet_cvs

(13)

Update :

Elle permet de mettre à jour les

fichiers locaux à partir de versions situées sur le serveur :

cvs update

cvs update

(14)

Commit :

cvs commit cvs commit

Une fois l’utilisateur termine et vérifie son travail, il utilise la commande

suivante pour enregistrer sa version

dans le référentiel:

(15)

La fusion :

Problème : D'autres utilisateurs ont déjà publié une autre version : commit commit il y a détection de la compatibilité entre les modifications.

Si il y a compatibilité Si il y a compatibilité fusion avec le reste du projet dans le référentiel.

Sinon Sinon CVS indique un conflit. Les utilisateurs le

résolvent alors manuellement en se mettant d’accord pour

valider la version finale.

(16)

Clients CVS :

JCVS

Smart CVS

Intégration dans l’IDE Eclipse (Démo)

Turtoise

 …

Références

Documents relatifs

Un étudiant de mt25 doit saisir que toutes les informations fournies dans l'énoncé doivent être interprétées pour prouver un certain nombre de conséquences géométriques qui

[r]

Alors qu’ils jouent aux pirates, Willy et Scarlett sont bien déçus par le trésor.. amassé: que

En 2016, on estime que le nombre d’arbres plantés par l’Organisation des Nations unies (ONU) est de 7,3 milliards et on suppose que le nombre d’arbres plantés par l’ONU

Pour répondre, vous recopierez sur votre copie le numéro de la question et indiquerez la seule bonne réponse (écrire A, B, C ou D suivi de la réponse associée).. Si cette

Épreuve de Mathématiques Le correcteur tiendra compte de la rigueur dans la rédaction et de la clarté de la copie.. Il est demandé à l’élève de justifier toutes

5 b/ Votre supérieur vous indique que les consommations théoriques inscrites sur les fiches techniques sont très optimales et que, pour connaître la consommation

Hormis le temps de parcours sur route, il est prévu que vous disposez de 1/ 4 d’heure pour charger et de 1/ 4 d’heure pour décharger votre véhicule à chaque voyage.. b-1/ Au vu