Tag Archive for 'CVS'

CVS - Rollback de version d’un fichier dans CVS

Suite à une nouvelle version, il est malheureusement possible de voir apparaître des regressions sur votre application favorite.

Nous allons voir ici comment faire un rollback de version sur un fichier géré par CVS.

1. D’abord, update de la dernière révision dans votre “working copy”.
$ cvs update test.pl
P test.pl

2. A la recherche de la dernière version stable .
$ cvs log test.pl
RCS file: /cvsroot/perl/test.pl,v
revision 1.45
date: 2008/04/06 15:14:32; author: cjovet; state: Exp; lines: +10
revision 1.44
date: 2008/04/04 18:21:53; author: cjovet; state: Exp; lines: +37
-20

3. Merge des changement entre les versions 1.45 et 1.44 (i.e. backwards),
dans notre répertoire de travail …
$ cvs update -j1.45 -j1.44 test.pl
retrieving revision 1.45
retrieving revision 1.44
Merging differences between 1.45 and 1.44 into test.pl

4. Vérification du numéro de la version courante (1.44)
$ cvs diff -r1.44 test.pl
Pas de sortie = pas de difference

5. Pour avoir la différence avec la HEAD :
$ cvs diff -rHEAD test.pl

6. Enfin, commit du “working copy” courant qui rend effectif le rollback.
$ cvs commit -m \"reverting back to state in revision 1.44 to undo some bugs\" test.pl
Checking in test.pl;
/cvsroot/perl/test.pl,v test.pl
new revision: 1.46; previous revision: 1.45
done.


  Partager sur Wikio

Import CVS

Créer un repository CVS local
1) mkdir /home/cvslocal && cd /home/cvslocal
2) cvs init (création du répertoire CVSROOT)

Récupérer un module à partir d’un CVS distant
1) export CVSROOT=’:ext:user@hostname:/cvsdisant/repdistant’
2) mkdir /tmp/import && cd /tmp/cvs
3) co module1 module2
4) find . -type d -name CVS -exec rm -rf {} \; (suppression de tous les répertoires CVS)
5) find . -type d -name CVS (vérification)
6) export CVSROOT=’:local:/home/cvslocal’
7) cvs import -m “import de localsearch en cvs local” module1 V0
cvs import -m “import de localsearch en cvs local” module2 V0
8) ls /home/cvslocal


  Partager sur Wikio

Les avantages de CVS

  • Prémunir des erreurs d’inattentions (développement)
  • Prémunir des erreurs matérielles
  • Présenter un projet toujours en état
  • Travailler en équipe
  • Gagner du temps

  Partager sur Wikio