Eine Überwachung ist die übliche Bezeichnung für die Fähigkeit von CVS die Benutzer zu benachrichtigen, wenn eine Datei geändert wurde oder ein anderer Entwickler mit deren Bearbeitung begonnen hat. Die Verwendung von Überwachungen setzt voraus, dass die Datei
entsprechend eingerichtet wurde. Dieses Thema wird hier nicht weiter behandelt. Wenn Sie weitergehende Informationen benötigen, finden Sie diese in den im Anhang erwähnten Büchern. $CVSROOT
/CVSROOT/notify
Cervisias Unterstützung für Überwachungen umfasst sechs Menüpunkte.
Möchten Sie für eine oder mehrere Dateien eine Überwachung setzen, verwenden Sie den Menüeintrag → . Der erscheinende Dialog bietet Ihnen die Möglichkeit über alle von CVS unterstützten Vorgänge benachrichtigt zu werden. Möchten Sie beispielsweise eine Benachrichtigung erhalten, wenn eine Datei eingespielt wird, markieren Sie die Ankreuzfelder und . Möchten Sie über alle Vorgänge benachrichtigt werden, markieren Sie das Ankreuzfeld . Bei Abschließen des Dialogs wird folgende Befehlszeile ausgeführt:
cvs watch add -a commit Dateinamen
oder eine ähnlichen Befehlszeile, abhängig von den im Dialog ausgewählten Ereignissen.
Wenn Sie an einigen Dateien nicht mehr interessiert sind, können Sie die Überwachung aufheben. Hierzu wählen Sie im Menü → . In diesem Dialog werden dieselben Optionen angeboten wie beim Setzen der Überwachung. Schließen Sie diesen Dialog ab, setzt Cervisia folgenden Befehl ab:
cvs watch remove Dateinamen
gegebenenfalls mit der Option -a
für das ausgewählte Ereignis.
Darüberhinaus können Sie eine Liste von Benutzern anfordern, die bestimmte Dateien überwachen. Wählen Sie im Menü → . Hierdurch wird folgender Befehl ausgeführt:
cvs watchers Dateinamen
Gewöhnlich wird CVS dergestalt eingesetzt, dass jeder Entwickler in seinem lokalen Arbeitsordner arbeitet. Möchte er eine Datei ändern, öffnet er sie in seinem Editor und bearbeitet sie. Erst das Einspielen der geänderten Datei bewirkt, dass andere Entwickler bemerken, dass er an dieser Datei arbeitet.
Manche Entwicklergruppen bevorzugen eine andere Vorgehensweise. Sie möchten informiert werden, wenn jemand eine Datei bearbeitet, und zwar sobald er damit beginnt. Dies erreicht man durch die Anwendung weiterer CVS-Befehle. Möchte Sie eine Datei bearbeiten, wählen Sie sie in Cervisia aus und rufen Sie den Menüpunkt → auf. Hierdurch wird der folgende Befehl ausgeführt:
cvs edit Dateinamen
Hierdurch erhalten alle Benutzer eine Mitteilung, die für diese Datei die Überwachung des Ereignisses Bearbeiten
gesetzt haben. Gleichzeitig werden Sie als Bearbeiter der Datei registriert. Eine Liste aller Bearbeiter einer Datei erhalten Sie über → . Dies entspricht dem Befehl:
cvs editors Dateinamen
Eine Bearbeitungs-Sitzung wird automatisch beim Einspielen der betreffenden Datei beendet. Zu diesem Zeitpunkt wird an alle, die eine entsprechende Überwachung für diese Datei gesetzt haben, eine unedit
-Benachrichtigung verschickt. Natürlich kann es auch vorkommen, dass Sie eine Datei nicht einspielen möchten und die Bearbeitungs-Sitzung abbrechen, um auf die zuletzt eingespielte Version der Datei zurückzugehen. Hierzu wählen Sie im Menü → . Beachten Sie hierbei, dass Cervisia diesen Befehl ohne Rückfrage ausführt. Das bedeutet im Klartext, dass sämtliche Änderungen, die Sie seit dem letzten Aufruf von → durchgeführt haben, verloren gehen. Genau gesagt führt Cervisia folgenden Befehl aus:
echo y | cvs unedit Dateinamen
Bislang haben wir nur den Fall besprochen, bei dem die Entwickler die Bearbeitungs-Befehle freiwillig benutzen. Darüber hinaus unterstützt CVS ein Entwicklungsmodell, bei dem der Einsatz dieser Befehle erzwungen wird. Der hierfür verantwortliche Befehl lautet cvs watch on. Er soll hier nicht weiter erläutert werden, da er normalerweise vom Administrator des CVS-Archivs verwendet wird. Für den Entwickler ist hierbei nur wichtig, dass bei diesem erzwungenen Bearbeitungs-Modus, die Arbeitskopien der Dateien beim Auslesen aus dem CVS-Archiv den Status „nur lesen“ erhalten. Das bedeutet, dass Sie eine Datei normalerweise nicht ändern können (es sei denn, Sie verwenden Tricks wie den Befehl chmod). Erst wenn Sie → auswählen, wird die Datei beschreibbar. Sobald Sie die Datei einspielen oder im Menü → auswählen, wird die Datei erneut „nur lesbar“.
Cervisias Editor-Schnittstelle unterstützt Sie bei Projekten, die Überwachungen erzwingen, auch auf andere Weise. Wenn Sie einen Editor durch Doppelklick auf eine Datei mit dem Status „nur lesen“ oder durch Auswahl von → öffnen, wären Sie später nicht in der Lage, Ihre Änderungen abzuspeichern. Das hat natürlich seine Gründe. Immer dann, wenn Sie eine Datei ändern wollen, sollten Sie zuvor den Befehl cvs edit ausführen, sodass alle Anwender, die diese Datei überwachen, darüber benachrichtigt werden, dass Sie diese Datei bearbeiten.
In einem solchen Fall ist es ratsam, die Option → zu markieren. Jetzt führt Cervisia, sobald Sie eine Datei mit einem Doppelklick öffnen, erst den Befehl cvs edit aus, bevor der Editor mit der Datei aufgerufen wird. Sie können diese Datei dann wie sonst auch bearbeiten. Wenn Sie die Änderungen durchgeführt haben, spielen Sie die Datei ein, und die eingespielte Datei erhält wieder den Status „nur lesen“.