Usant els vigilants

Un vigilant és el nom convencional d'una característica de CVS per a notificar als usuaris del repositori si un fitxer ha canviat o un desenvolupador ha iniciat l'edició d'un fitxer. L'ús dels vigilants requereix que s'hagi arranjat correctament el fitxer $CVSROOT/CVSROOT/notify. Això no s'explica aquí; si necessiteu més informació quant a l'arranjament des del punt de vista de l'administrador, llegiu un dels llibres llistats en l'apèndix.

El suport principal dels vigilants del Cervisia són sis elements del menú.

Per tal d'afegir un vigilant a un o diversos fitxers, useu AvançatAfegeix vigilant.... En el diàleg que obtindreu, podreu seleccionar ser notificat per qualsevol dels tipus d'esdeveniments que CVS accepta. Per exemple, si només voleu ser notificat quan un fitxer és comès, marqueu les caselles Només i Comissions. Si voleu ser notificat de qualsevol esdeveniment relacionat amb els fitxers marcats, marqueu la casella Tot. La línia d'ordres usada en acceptar el diàleg és

cvs watch add -a commit noms_dels_fitxers

o amb una opció similar, depenent dels esdeveniments que trieu vigilar.

Si ja no esteu interessat en alguns fitxers, podeu suprimir els vigilants sobre ells. Amb aquesta finalitat, useu AvançatElimina vigilant.... En el diàleg que obtindreu aquí, s'oferiran les mateixes opcions que en el formulari que heu emplenat en afegir el vigilant. Quan confirmeu aquest diàleg, el Cervisiaemet l'ordre

cvs watch remove noms_dels_fitxers

possiblement amb una opció -a pels esdeveniments seleccionats.

Finalment, podeu obtenir una llista de les persones que estan vigilant un conjunt de fitxers. Seleccioneu AvançatMostra els vigilants. Usar aquest element del menú resulta en una ordre

cvs watchers noms_dels_fitxers

En l'escenari normal d'ús de CVS cada desenvolupador treballa per separat al seu entorn de proves extret. Quan vol modificar algun fitxer, simplement l'obre en l'editor i comença a treballar en ell. Ningú té coneixement quant a aquest treball fins que es comet el fitxer.

Per alguns grups de desenvolupadors, aquest no és el model preferit de cooperació. Volen estar notificats de quan algú està treballant en un fitxer tan aviat comença. Això es pot aconseguir amb algunes de les següents ordres CVS Abans de començar a editar un fitxer, seleccioneu-lo en la finestra principal del Cervisia i seleccioneu AvançatEdita fitxers. Això executarà l'ordre

cvs edit noms_dels_fitxers

Això enviarà una notificació a qualsevol que hagi establert un vigilant d'edició en aquest fitxer. També us registrarà com a editor del fitxer. Podeu obtenir una llista de tots els editors d'un cert fitxer usant AvançatMostra els editors. Això és equivalent a escriure en la línia d'ordres

cvs editors noms_dels_fitxers

Una sessió d'edició finalitza automàticament en cometre el fitxer afectat. En aquest moment s'envia una notificació deseditat a totes les persones que hagin registrat un vigilant respectiu en el fitxer. Per descomptat, algunes vegades no voldreu cometre el fitxer, però voldreu cancel·lar la sessió d'edició del fitxer i revertir-lo a la versió anterior. Això es fa usant AvançatDesfés l'edició de fitxers. Noteu que el Cervisia no us demanarà confirmació; això vol dir que si useu aquest element del menú, tot el treball fet des que vàreu usar AvançatEdita fitxers es perdrà. Més exactament, el Cervisia usa la línia d'ordres

echo y | cvs unedit noms_dels_fitxers

Fins ara, només hem parlat dels casos en els quals els editats i els no editats s'usen voluntàriament pels desenvolupadors. En addició CVS implementa un model que força l'ús d'aquestes ordres. L'ordre responsable de commutar a aquest model és cvs watch on que no explicarem més detalladament perquè s'usa majorment per l'administrador del repositori. No obstant això, el punt important des del punt de vista del desenvolupador és que quan el projecte força els editats, les còpies de treball s'extreuen com només de lectura. Això significa que no podeu editar un fitxer per omissió (tret que useu trucs com ara chmod). El fitxer es torna d'escriptura només en usar AvançatEdita fitxers. Es torna de només lectura una altra vegada en cometre'l o usar AvançatDesfés l'edició de fitxers.

La interfície de l'editor del Cervisia també us ajuda amb projectes que forcen els vigilants d'una altra manera. Si acabeu d'iniciar un editor amb un fitxer de només lectura dobleclicant-lo o usant FitxerEdita, no podreu desar les modificacions. Això per descomptat, té una raó: sempre que vulgueu canviar un fitxer, haureu d'executar abans cvs edit, perquè totes les persones que estan vigilant el fitxer obtinguin una notificació que esteu treballant en ell.

En aquest cas, és recomanable marcar l'opció ArranjamentFes el cvs edit automàticament quan sigui necessari. Ara, cada vegada que editeu un fitxer fent-hi doble clic, el Cervisia executarà cvs edit abans d'executar l'editor. D'aquesta manera podeu editar el vostre fitxer de la forma habitual. En finalitzar el vostre treball, cometeu els fitxers, i els fitxers comesos seran de només lectura de nou.