> Projekt:Software-Sanierung > Werkzeuge > CVS-Nutzung

CVS-Nutzung

Autor: Kay Schützler
Letztes Update: Uli Sacklowski, 17.11.03
 

Inhalt

1. Allgemeines
2. Befehlsübersicht
3. Probleme
4. Veranschaulichung
5. Konfliktbereinigung

 

1. Allgemeines

Das CVS-System wurde in unserem Projekt für die Verwaltung der allgemein zugänglichen Quellen gewählt, da es bei vergleichsweise geringem Nutzungsaufwand alle nötige Funktionalität beinhaltet und sich in anderen Projekten an unserem Institut bereits bewährt hat.

Der Kern des CVS-Systems ist das so genannte Repository, das alle gemeinsam zu nutzenden Dateien zentral verwaltet und die Zugriffe auf diese kapselt.

Zur Bearbeitung von Dateien müssen diese daher vom Anwender erst als lokale Kopien angelegt werden. Im Anschluss an die Bearbeitung müssen die Dateien natürlich auch wieder im Repository aktualisiert werden.

Für diese Zwecke steht eine Reihe von Befehlen zur Verfügung, deren Bedeutung jedem Nutzer geläufig sein sollte.

 

2. Befehlsübersicht

Da CVS die Quellen zentral verwaltet, muss vor einem checkout dieser zentrale Speicherort über die Variable CVSROOT bekannt gemacht werden. Bei einer C-Shell geschieht das in unserem Projekt über den Befehl setenv CVSROOT /vol/baal-vol3/projekt98/quellen.

 

3. Probleme

Das Kernproblem unserer Verwendung von CVS besteht in der parallelen Nutzung von Windows (zur Entwicklung) und UNIX (zur Archivierung). Daher muss jeder, der eigene Entwicklungen vornimmt, folgendes beachten:

 

4. Veranschaulichung

 

5. Konfliktbereinigung

Konflikte sind Quelltextstellen, die von mehreren Entwicklern (aus Sicht des CVS-Systems) "gleichzeitig" bearbeitet wurden. Bei einem "cvs update" werden Konflikte durch CVS in der betroffenen Datei folgendermaßen markiert:

<<<<<<< DATEINAME
Neuer Text.
=======
Bisheriger Text im CVS.
>>>>>>> AKTUELLE CVS-REVISIONSNUMMER
    

Um den Konflikt zu bereinigen, muss entschieden werden, in welcher Reihenfolge die beiden Dateiteile zu stehen haben. Nachdem jene entsprechend sortiert sind, müssen die Markierungen (spitze Klammern, Gleichheitszeichen und der dazu gehörige Text) entfernt werden. Danach ist der Konflikt bereinigt.