CVS |
CVS (Concurrent Version System) permet à plusieures personnes, éventuellement sur des machines distinctes, de modifiers les mêmes fichiers, en se souvenant de toutes les modifications intermédiaires. CVS est par exemple utilisé lors du développement de « gros » logiciels. Nous y avons eu recours pour gérer Hubris (le journal mathématique de l'ENS de Cachan). |
|
Notes sur l'utilisation de CVS |
Choisir un répertoire qui contiendra tous les fichiers, tans les fichiers de configuration et de log de CVS que les fichiers qu'il va archiver. C'est CVS qui utilisera ce fichier, on n'y accèdera pas directement. |
Mettre ce nom de répertoire dans la variable d'environnement CVSROOT. |
|
Il faut créer ce répertoire et y mettre un répertoire CVSROOT (qui contiendra les fichiers « administratifs » de CVS). |
|
Créer le répertoire dans lequel on va travailler, et y mettre quelques fichiers. |
|
Mettre ce répertoire et tous les fichiers qu'il contient dans l'archive CVS. Les deux derniers arguments arguments (vendortag et releasetag) ne sont pas vraiment utiles. |
|
On peut maintenant tout effacer et commencer à travailler avec une copie des fichiers. |
|
Pour ajouter un fichier (que l'on vient de créer dans la copie de travail) : |
|
Pour effacer un fichier |
|
Pour demander à CVS d'enregistrer les modifications apportées aux fichiers (et aussi pour répercuter les commandes cvs add ou cvs delete qui n'auraient pas été suivies de cvs commit) : |
|
Pour demander à CVS de mettre à jour la copie de travail des fichiers, au cas où un autre développeur aurait apporté des modifications (généralement, ce n'est pas grave que deux personnes modifient en même temps le même fichier, pour peu que ces modifications ne soient pas incompatibles -- en cas de problème, CVS le signale et demande à l'utilisateur ce qu'il doit faire). |
|
On peut effacer à tous moment la copie de travail (mais il vaut mieux taper « cvs commit » avant, sinon, on risque de perdre les dernières modifications). |
Les versions antérieures |
Pour comparer un fichier (contenu dans le répertoire de travail) à la version archivée par CVS (si on ne précise pas de fichier, c'est le répertoire courrant qui est pris en compte, avec tous ses sous-répertoires) : |
|
Pour avoir le numéro de version d'un fichier : |
|
Pour avoir la différence entre la version actuelle et la version 1.2 : |
|
Pour avoir la différence entre la version 1.3 et la version 1.5 : |
|
Utilisation de CVS par différentes personnes |
Il faut que les fichiers de l'archive CVS soient lisibles par tous les membres du projet et que les répertoires de cette archive soient accessibles en écriture par tous les membres du projet. |
|
CVS à distance |
Normalement, ça devrait marcher comme ça : |
|
Ça ne marche pas, car la variable d'environement PATH (sur piano) ne contient pas le répertoire où se trouve l'exécutable de cvs. Je n'ai pas trouvé le fichier de configuration qui était lu... |
On peut remplacer ssh par un script du genre |
|
Note sur l'utilisation de CVS pour Hubris (1997) |
Pour obtenir une copie de tout cela, afin de la modifier : |
|
Pour obtenir une copie d'un seul répertoire, il suffit de le nommer (mais un seul ne suffit pas). |
|
Pour pouvoir compiler les fichiers *.tex, il faut d'abord exécuter |
|
Qui contient |
|
Il doit encore manquer des fichiers dans Hubris/Numeros/inputs. |
Pour rajouter un fichier |
|
Pour répercuter les modifications que l'on vient d'effectuer |
|
Pour répercuter les modifications que effectuées entre-temps par quelqu'un d'autre |
|
Pour que d'autres personnes puissent modifier les fichiers, il serait bon qu'ils appartiennent au groupe |
|
Vincent Zoonekynd |