2009-05-18 3 views

Répondre

7

Différentes VCS des approches différentes. CVS, par exemple, créera un fichier sur le serveur pour chaque fichier que vous aurez validé. C'est essentiellement un fichier au format RCS; CVS est seulement un wrapper autour de RCS qui exécute les commandes RCS sur de nombreux fichiers dans un sous-répertoire (RCS ne peut fonctionner que sur des fichiers uniques).

Le fichier RCS contient une liste de modifications (numéro de version, message d'enregistrement et quantité modifiée). Après cela vient une copie de la version actuelle HEAD. Le reste des fichiers sont les différences entre les versions (long explanation). De cette façon, CVS peut retourner rapidement la version HEAD (qui est le plus souvent demandée) et il peut calculer les autres versions.

CVS ne fait aucune validation; Si l'un de vos fichiers est corrompu, vous avez besoin d'une sauvegarde. Puisque CVS est basé sur RCS, il ne peut pas lire les répertoires et ne peut pas suivre les renames. CVS et RCS utilisent la commande standard diff(1) pour créer les diffs.

Subversion (SVN) fonctionne similairement mais ajoute le versionnement des répertoires et des renommes. De plus, SVN utilise un meilleur algorithme de diff (xdelta) qui donne un référentiel plus petit. Pour une explication du fonctionnement de Git, voir here.

0

Darcs est très différent et à mon humble avis plus intuitif que les autres SCM même distribué. Il ya un excellent guide pour les débutants sur la façon dont cela fonctionne: Understanding Darcs.