Sperren

Das Entwicklungsmodell, das bei der Verwendung von CVS benutzt wird nennt sich unreserved checkouts (was soviel bedeutet wie uneingeschränktes Auslesen). Jeder Entwickler hat seinen eigenen Arbeitsordner, in dem er die Dateien nach Belieben bearbeiten kann. Verschiedene Entwickler können synchron auf den Dateien arbeiten, sofern die Überwachungsfunktionen wie cvs edit verwendet werden. Änderungen, die von einem anderen Entwickler durchgeführt wurden, werden beim nächsten Aktualisieren des Arbeitsordners mit den lokalen Änderungen zusammengeführt.

Andere Versionskontrollsysteme wie RCS und SourceSafe verwenden ein hiervon abweichendes Modell. Möchte ein Entwickler eine Datei bearbeiten, muss er diese sperren. Eine Datei kann zur selben Zeit nur von einem Entwickler gesperrt sein. Ist die Änderung der Datei abgeschlossen, wird die Sperrung aufgehoben. Bei diesem Modell können niemals Konflikte auftreten. Andererseits können auch nie zwei Entwickler gleichzeitig an derselben Datei arbeiten, selbst dann nicht, wenn Ihre Änderungen sich nicht beeinflussen. Das kann sich bei der Entwicklung als Flaschenhals erweisen. Wir wollen hier nicht die organisatorischen Vorteile beider Modelle besprechen. Nichtsdestotrotz soll aber erwähnt werden, dass, auch wenn das Sperren von Dateien in gewisser Weise unterstützt wird, diese Vorgehensweise nicht den bevorzugten Weg beim Einsatz von CVS darstellt. Sie sollten diese Funktionalität nur einsetzen, wenn Sie sich sicher sind, dass der Projektleiter dies erlaubt.

Mit Cervisia können Sie Dateien wie folgt sperren. Wählen Sie die gewünschte Datei aus. Der Menüpunkt ErweitertDatei sperren führt den folgenden Befehl aus:

cvs admin -l Dateinamen

Den umgekehrten Effekt erreicht man über ErweitertDateien freigeben. Hierbei wird folgender Befehl ausgeführt:

cvs admin -u Dateinamen