Concurrent Versions System Sabrina LEFIEVRE - sabrina.lefievre@imag.fr Stéphane CHOMAT - stephane.chomat@imag.fr Equipe ADELE Jeudi 21 Février 2002
CVS Concurrent Versions System Pourquoi ? Partage, centralisation de code Récupération des dernières versions Retour aux précédentes versions Différences entre les versions Supporte les fichiers binaires Pour qui ? Développeurs individuels Equipes, projets
CVS Concurrent Versions System Comment ? Modèle client/serveur Un repository sur le serveur Quels clients ? WinCVS (Windows) JCVS (Java) CVSweb ...
CVS Concurrent Versions System Developer A development update checkin checkout repository Developer B Idéalement...
CVS Concurrent Versions System checkin Developer A conflict resolution update checkin X repository Developer B conflict En pratique...
CVS Concurrent Versions System Usage Checkout Copies privées dans le répertoire de travail Plusieurs copies possibles de plusieurs versions Commit Envoi des modifications au serveur Update Mise à jour des versions depuis le serveur
CVS Concurrent Versions System Les principales commandes Syntaxe cvs [cvs-options] command [cmd-options] [files] Commandes checkout add remove log diff update commit tag...
CVS Concurrent Versions System Sources CVS home : http://www.cvshome.org Client WinCvs: http://www.wincvs.org Client jCVS: http://www.jcvs.org/
CVS avec ANT Syntaxe : <cvs [liste des propriétés]/> Principales propriétés Autres propriétés : date, quiet, noexec, output, error, port, passfile.
Un Exemple mets les fichiers du module "compitv/doc-management" dans le répertoire de travail. <cvs cvsRoot=":pserver:chomats@zidane:/data/cvs" package="compitv/doc-management" dest="${mon_repertoire_de_travail}" /> $ ant co-management Buildfile: build.xml co-management: [cvs] cvs server: Updating compitv/doc-management [cvs] M compitv/doc-management/CDC.doc [cvs] A compitv/doc-management/PDL.doc [cvs] A compitv/doc-management/SE0.doc Le Target co-management contient la commande ci-dessus. Le fichier a été modifié, il est laissé tel quel dans le répertoire de travail
Conseils pour utiliser cvs Avoir une architecture logicielle modulaire et bien définie. Faire des « commit » à chaque modification importante. Une personne responsable pour résoudre les conflits. Les documents binaires sont en mode « verrouillé ».
Comment créer un module Avoir un compte au niveau du serveur cvs. Créer en local notre architecture = répertoire + fichier. Utiliser la commande import de cvs pour mettre ces fichiers dans la base. Puis utiliser la commande update ou checkout.
Référence http://jakarta.apache.org/ant/manual/CoreTasks/cvs.html http://www.wincvs.org CVS home : http://www.cvshome.org Client WinCvs: http://www.wincvs.org Client jCVS: http://www.jcvs.org/ Des questions ?