Documentation perimee!!

ATTENTION!!''' AlternC n'utilise plus CVS depuis la version 0.9.4, voir MigrationVersSubversion pour les details de la migration. La documentation ici est donc conservee seulement pour l'interet historique, voir DocSvn pour la documentation actuelle.

Documentation sur CVS, fonctionnement

Informations de connexion

Qu'est ce que CVS ?

CVS est l'acronyme de "Concurrent Versioning System", qui se traduit par "systeme de gestion de version a acces multiples". C'est un service melangeant le ftp avec un certain nombre de fonctionnalites en plus a savoir :

  • Gestion de version. CVS conserve TOUTES les versions (l'historique) de chaque fichier present dans un dossier. Un dossier CVS est appele 'module'. Ainsi, on peut retrouver n'importe quelle ancienne version d'un fichier, pour voir ce qui a ete modifie par tel autre developpeur, et eventuellement revenir a une ancienne version en cas d'erreur.
  • Gestion de notes de developpement. CVS demande la saisie d'un commentaire associe a chaque modification effectuee sur chaque fichier. Cela permet de travailler en groupe, car chacun sait ce que les autres ont fait, et pourquoi, comment.
  • Gestion de groupes. CVS peut autoriser certaines personnes a acceder aux fichiers en lecture seule, ou en lecture ecriture etc. Cela permet de rendre des sources disponibles tout en interdisant des modifications aux non-developpeurs.
  • Gestion de l'historique. CVS conserve des logs des mises a jours, ajouts, suppression effectuees sur chaque module.
  • Gestion de la compilation . CVS peut effectuer n'importe quelle action sur le serveur a chaque mise a jour de fichiers dans le repository. Ainsi, on pourra recompiler automatiquement un programme a chaque modification, ou mettre a jour un site web automatiquement. Dans le cas d'AlternC, un mail est envoye a chaque modification, pour permettre aux autres de se tenir facilement au courant.

Il existe aussi une interface web permettant de parcourir l'ensemble des dossiers du CVS. Cette interface, appelee cvsweb, est disponible sur le [Serveur de Developpement]

Si vous utilisez Linux, nous avons un mode d'emploi de base de CvsPourLinux.

Si vous utilisez Windows, nous avons un mode d'emploi de base de TortoiseCVS

Le manuel officiel de CVS est tres complet et est une lecture essentiel pour toute question CVS.

Enfin, je ne peux que vous conseiller VIVEMENT la documentation fabuleuse d'IdealX au sujet de CVS : http://www.idealx.org/doc/cvs.fr.html Ainsi que la petite doc de production de Stephane Bortzmeyer, qui a aussi contribue grandement (sans trop le savoir ...) a faire grandir AlternC : http://www.freenix.org/curiosite/cvs.html

Modules AlternC

La liste des modules CVS utilises sur AlternC est (a ce jour) la suivante :

  • *alternc.old* Contient le bureau d'AlternC (php)
  • *bindslave* Contient le code du paquet esclave DNS a installer sur votre serveur Slave DNS.
  • *CVSROOT* Contient les parametres de configuration generaux du CVS
  • *dmanager* Contient le code du porte document de Globenet, projet parallele
  • *lautre-vote* contient le code du systeme de Vote de L'Autre Net, utilise par l'autre net, en relation avec AlternC
  • *mailman* Paquet independant de mailman pour AlternC. Ne contient pas mailman mais seulement l'interface entre mailman 2.1 et AlternC 1.1
  • *procmailbuilder* Paquet independant permettant de creer des filtres de type "procmail" dans le webmail squirrelmail. paquet specifique a AlternC, mais pouvant etre utilise en dehors de ce dernier.

Tags et branches CVS

PRE_DEBIANIZATION
appose avant le debut de la debianisation
before_ldap_to_mysql
appose avant le switch vers mysql
REL_0_9_1
release 0.9.1, estime a partir de debian/changelog
REL_0_9_2-1
release 0.9.2-1, estime a partir de debian/changelog
REL_0_9_2-2
release 0.9.2-2, estime a partir de la date dans debian/changelog
REL_0_9_3
release 0.9.3
REL_0_9_3_WOODY
release 0.9.3, sur la branche woody
REL_0_9_3_1_RC1, REL_0_9_3_1_WOODY
release candidate pour 0.9.3.1
REL_0_9_3_1
release 0.9.3.1
REL_0_9_3_1_WOODY
release 0.9.3.1, sur la branche woody
"woody"
Une branche a part pour la woody
JOE_TYPE_COMPTES
Branche pour l'ajout de types de comptes par Jonathan Bastien-Filiatrault
ALTERNC_CHANGEPASS_0_9_5
alternc-changepass-0.9.5
ALTERNC_ADMINTOOLS_0_1_3
alternc-amdintools 0.1.3
ALTERNC_MAILMAN_1_3
alternc-mailman 1.3
ALTERNC_PROCMAIL_1_4
alternc-procmail 1.4
ALTERNC_STATS_1_2
alternc-stats...
debian_version_X_Y
tags appliques automatiquement par cvs-debuild/cvs-buildpackage

Des tags sont appliques pour chaque release, sous la forme REL_X_Y-Z (exemple: REL_0_9_2-2) ou REL_X_Y-Z_WOODY sur la branche woody.

Utilisation de la branche woody

La branche woody existe dans le cvs. On y met *uniquement* les *fichiers* qui sont specifiques a woody.

Exemple : on se rend compte que /etc/postfix/main.cf sera different woody / sarge. On cree la branche woody de main.cf :

cvs -f tag -b 'woody' 'install/scripts/etc/postfix/main.cf'

Ensuite, on peut travailler tranquillement sur la version sarge de ce fichier.

Si l'on veut modifier une version "woody" d'un fichier, on utilise

cvs co -r woody alternc

Cela nous fournit un depot local contenant uniquement les fichiers specifiques a woody.

Connexion

Pour vous connecter au CVS: http://www.alternc.org/download.php.fr

Procedures internes

Voir ReleaseProcess.