Utiliser les alertes

Une alerte est le nom conventionnel de la fonctionnalité de CVS prévue pour avertir les utilisateurs du dépôt dès qu'un fichier a été modifié. L'utilisation des alertes exige que le fichier $CVSROOT/CVSROOT/notify soit configuré correctement. Cet aspect n'est pas abordé ici ; si vous avez besoin d'informations complémentaires sur la configuration côté administrateur, consultez un des ouvrages répertoriés dans l'annexe.

La prise en charge principale des alertes de Cervisia concerne six éléments de menu.

Pour ajouter une alerte à un ou plusieurs fichiers, utilisez AvancéAjouter une alerte.... La boîte de dialogue qui apparaît permet de choisir d'être averti de tout type d'évènement que CVS prend en charge. Par exemple, si vous voulez être averti uniquement lorsqu'un fichier est validé, cochez les cases Uniquement et Validations. Pour être averti de tout évènement relatif aux fichiers marqués, cochez la case Tous. Lorsque vous confirmez dans la boîte de dialogue, la ligne de commande utilisée est

cvs watch add -a commit noms des fichiers

ou une option similaire, en fonction des évènements que vous choisissez de surveiller.

Lorsque plus aucun fichier ne vous intéresse, vous pouvez supprimer vos alertes en conséquence. Pour ce faire, utilisez AvancéSupprimer une alerte.... La boîte de dialogue qui apparaît offre les mêmes options que le formulaire que vous avez rempli en ajoutant l'alerte. Lorsque vous confirmez cette boîte de dialogue, Cervisia émet la commande

cvs watch remove noms des fichiers

éventuellement avec une option -a pour les évènements choisis.

Pour terminer, vous pouvez obtenir une liste des utilisateurs qui surveillent des fichiers. Choisissez AvancéAfficher les surveillances. L'utilisation de cet élément de menu provoque la commande

cvs watchers noms des fichiers

Dans le scénario d'utilisation normale de CVS, chaque développeur travaille séparément dans la copie locale qu'il a extraite. Lorsqu'il veut modifier un fichier quelconque, il lui suffit de l'ouvrir dans son éditeur et de commencer à travailler dessus. Personne d'autre n'aura connaissance de ce travail jusqu'à sa validation.

Pour certains groupes de développeurs, ceci n'est pas le modèle de coopération préféré. Ils veulent être avertis à propos des personnes qui travaillent sur un fichier dès qu'ils commencent à travailler dessus. Cela peut être obtenu par le biais de commandes supplémentaires de CVS. Avant de commencer à éditer 'un fichier, sélectionnez-le dans la fenêtre principale de Cervisia et choisissez AvancéÉdition. Ceci exécutera la commande

cvs edit noms des fichiers

Cette commande émet une notification à quiconque a défini une alerte edit sur ce fichier. Elle vous déclare également comme éditeur du fichier. Vous pouvez obtenir une liste de tous les éditeurs d'un fichier donné à l'aide de AvancéAfficher les éditeurs. Ceci équivaut à saisir sur la ligne de commande

cvs editors noms des fichiers

Une session d'édition se termine automatiquement lorsque vous validez le fichier affecté. À ce moment, une notification unedit est envoyée à toutes les personnes ayant déclaré une alerte particulière sur le fichier. Naturellement, il se peut que vous ne souhaitiez pas valider le fichier, mais plutôt interrompre la session d'édition et à revenir à la version précédente du fichier. Pour ce faire, utilisez AvancéAnnuler l'édition. Notez que Cervisia ne vous demandera pas de confirmation. Cela signifie que si vous employez cet élément de menu, tout le travail que vous avez effectué depuis que vous avez cliqué sur AvancéÉdition sera perdu. Plus précisément, Cervisia utilise la ligne de commande

echo y | cvs unedit noms des fichiers

Jusqu'ici, nous n'avons abordé que le cas où les développeurs utilisent les éditions et les annulations d'éditions volontairement. CVS prend également en charge un modèle qui respecte l'usage de ces commandes. Nous ne décrirons pas plus avant la commande chargée de basculer vers ce modèle, cvs watch on, car elle est surtout utilisée par l'administrateur du dépôt. Aspect toutefois important du point de vue du développeur lorsque le projet impose des éditions, les copies de travail sont extraites en lecture seule. Cela signifie que vous ne pouvez pas modifier un fichier par défaut (à moins de faire appel à des astuces comme chmod). Le fichier n'est rendu inscriptible que lorsque vous utilisez AvancéÉdition. Il redevient en lecture seule lorsque vous validez le fichier ou que vous utilisez AvancéAnnuler l'édition.

L'interface d'édition de Cervisia vous aide pour les projets imposant des alertes, mais d'une manière différente. Si vous venez de démarrer un éditeur avec un fichier en lecture seule par un double clic ou à l'aide de FichierÉdition, vous ne pourrez pas enregistrer vos modifications ultérieurement. Il y a bien entendu une raison à cela : chaque fois que vous voulez changer un fichier, exécutez cvs edit au préalable, de sorte que tous les utilisateurs surveillant le fichier soient avertis que vous travaillez dessus.

Dans un tel cas, il est souhaitable de cocher l'option ConfigurationExécuter « cvs edit » automatiquement si nécessaire. Dorénavant, chaque fois que vous modifiez un fichier en double cliquant dessus, Cervisia lance un cvs edit avant l'exécution proprement dite de l'éditeur. Vous pouvez alors modifier votre fichier comme d'habitude. Votre travail terminé, validez vos fichiers : les fichiers validés sont à nouveau en lecture seule.