Logiciel de versification en local (mono utilisateur)


Misère de misère que choisir comme logiciel de versification? Je n'ai pas de réponse mais juste une idée après avoir galèré tous seul pendant pas mal de temps, donc je donne ici juste mon point de vue (peut être pas tout à fait impatial) sur quelques spécimens.
Bon après avoir perdu beaucoups de travail à cause de défaillance d'un disque dur, on ne peut plus trop se servir des dates pour remonter les version des scripts que l'on écrit, renome et qui sont stockés partout sur plusieurs OS. Quand on programme ou que l'on édite des pages pour un site ou que l'on traduit de la doc, il faut un system de révision.
Mon premier choix à été RCS car il a été un des premiers, il était facile et fait pour moi (pas trop de doc, facile à installer).
Puis il y a eu CSV qui est bien sur plus performant, qui permet de travailler à plusieurs et aussi sur des branches différentes, mais pas mal rigide au sens que l'on peut se retrouver avec les scripts coincés sans possibilités d'y travailler. Bon c'est surement de ma faute mais la doc et les commandes à la console sont assez compliquées (tout en anglais).
Il y a eu SVN alors là super top... l'interface graphique c'est quand même le pied et ça parle beaucoup plus que la console. Mais il faut changer la façon de voir les choses, tout ces repo et copy de travail avec des règles stricte polus un peut ma compréhenssion des choses



- RCS
- CVS
- SVN
- Mercurial hg

RCS

Le versificateur tranquille pour les scripts quand on est tout seul, il est idéal en mono utilisateur et pour les scripts Perl. L'utilisation est super simple, on peut le faire fonctionner avec 3 ou 4 commandes.
Créer un dépôt:
[toto @localhost home]$ mkdir /RCS
[toto @localhost home]$ rcs init

Utiliser rcs
Deux commandes (qui suffise presque à faire fonctionner rcs) : ci (pour check-in in) poster dans le dépôt et co (pour check-out out) sortir du dépôt.

rcs est très simple d'utilisation, il à été construit pour suivre le précepte:
verrouiller => exporter => modifier => assumer en postant la révision 
(ne pas s'affoler il suffit de petite commandes de deux lettres pour faire tout ça)

c'est à dire en décomposant:
Quand on décide de s'attaquer à un fichier source (script ou autre) on commence par le verrouiller de façon à ce que les autres ne puissent plus effectuer de modifications (une fois verrouiller ils savent que quelqu'un s'en charge et doivent attendre que vous ayez rendu votre travail pour pouvoir travailler sur votre version à leur tour). Bon si on est seul ça ne gêne pas.

Alors on prend le fichier que l'on veut modifier, appelé fichier source en le verrouillant en une seule commande:
co -l mon_script.pl
co pour chekout (sortir du dépôt) et -l pour lock (verrouiller) et le nom du script mon_script.pl.
Ensuite on peut le modifier tranquille puis une fois fini on le remet dans le dépôt avec la commande:
ci mon_script.pl
et là rcs lui incrémentera le numéro de version automatiquement et vous demandera d'entrer quelques lignes pour expliquer les modifs que vous avez accompli. Ceci fait il suffira d'une ligne vierge avec juste un point pour fermer l'éditeur sur la console.

Bon il y a d'autres commandes pour quand il y à des problèmes mais en général avec un
rcs -u mon_script.pl
ou on reprend en refaisant la manœuvre. Il existe aussi rlog qui est très pratique pour savoir ce que l'on à accompli et si le fichier est verrouiller ou qui s'en occupe. Enfin voilà c'est très facile, il y a le man ci, co, rlog, rcs ...

RCS  est très bien pour une seule bécane ou un petit réseau, mais il y à quelques petites lacunes, style qu'il ne stocke pas les différentes versions et donc à part la dernière on ne peut travailler plusieurs branches. Et puis si il y a plusieurs comptes qui travaille sur le même fichiers ça peut être embêtant avec le système de verrouillage. En plus si on travaille sur un projet qui est fait de plusieurs fichiers, rcs s'occupe que d'un fichier à la fois.