SelfLinux Programmierung CVS Verwaltung eines CVS-Archivs Abschnitt 2 | SelfLinux-0.13.0

| Verwaltung eines CVS-Archivs | Autor Formatierung GPL

#### 2 Beschaffen und Bauen von CVS unter Unix

Zum Zeitpunkt dieses Schreibens gibt es zwei anerkannte Server, von denen Sie CVS herunterladen können. Einer ist der FTP-Server der Free Software Foundation, ftp://ftp.gnu.org/gnu/cvs/, der CVS als ein offizielles GNU-Werkzeug anbietet. Der andere ist der Server von Cyclic Software. Cyclic Software ist, wenn nicht de Betreuer von CVS, dann doch der "Betreuer der Betreuer", dadurch dass sie einen Server für das Archiv und Download-Zugriff für Benutzer und Entwickler zur Verfügung stellen. Deren Releases sind von http://download.cyclic.com/pub/ erhältlich.

Beide Server sind gleich empfehlenswert. Im folgenden Beispiel verwende ich den Server von Cyclic Software. Wenn Sie Ihren FTP-Client (wahrscheinlich Ihren Web-Browser) darauf ansetzen, sehen Sie eine Liste von Verzeichnissen, ungefähr wie diese:

Index of /pub

     cvs-1.10.5/ 18-Feb-99 21:36 -
     cvs-1.10.6/ 17-May-99 10:34 -
     cvs-1.10/ 09-Dec-98 17:26 -
     macintosh/ 23-Feb-99 00:53 -
     os2/ 09-Dec-98 17:26 -
     packages/ 09-Dec-98 17:26 -
     rcs/ 09-Dec-98 17:26 -
     tkcvs/ 09-Dec-98 17:26 -
     training/ 09-Dec-98 17:26 -
     unix/ 09-Dec-98 17:26 -
     vms/ 09-Dec-98 17:26 -

Lenken Sie Ihre Aufmerksamkeit auf die Verzeichnisse, die mit "cvs-" beginnen (Sie können die meisten anderen ignorieren). Wie Sie sehen, gibt es drei cvs-Verzeichnisse, was bedeutet, dass Sie sich bereits entscheiden müssen: Sollen Sie die als "stabil" gekennzeichnete Version oder lieber die neuere (aber nicht so gut getestete) Interimsversion verwenden? Die stabilen Versionen haben nur einen Dezimalpunkt, wie z.B. "cvs-1.10", wogegen die Interimsversionen Unterversionsnummern am Ende angefügt haben, wie z.B. "1.10.5".

Bemerkung Der GNU-Server bietet normalerweise nur die Hauptversionen an, nicht die Interimsversionen, an, also werden Sie nicht alle Verzeichnisse finden, wenn Sie CVS von dort beziehen.

Im Allgemeinen haben sich die Interimsversionen als sehr sicher erwiesen und enthalten manchmal Korrekturen für Fehler in der Hauptversion. Die beste Vorgehensweise ist es, höchste Interims-Release zu verwenden, aber darauf vorbereitet zu sein, so oft, wie es nötig ist auf die vorhergehende Version zurückzugehen, wenn Sie auf Probleme stoßen.

Die höchste im vorigen Beispiel gelistete Version ist cvs-1.10.6. In diesem Verzeichnis sehen wir Folgendes:

Index of /pub/cvs-1.10.6

     cvs-1.10.6.tar.gz 17-May-99 08:44 2.2M

Das ist es - der gesamte Quelltext von CVS. Laden Sie ihn einfach auf Ihre Maschine herunter, und Sie haben alles, was Sie zum Bauen von CVS benötigen. Wenn Sie bereits mit dem Standardbauprozess für GNU-Werkzeuge vertraut sind, wissen Sie an diesem Punkt, was zu tun ist, und können wahrscheinlich bis zum Abschnitt "Anatomie einer CVS-Distribution" weiter blättern. Wenn Sie allerdings nicht sicher sind, wie Sie weitermachen sollen, lesen Sie weiter ...

Die folgenden Compilieranweisungen und Beispiele nehmen an, dass Sie eine recht standardisierte Unix-Distribution haben. Es sollte mit jeder der freien Unix-Versionen (z.B. FreeBSD oder Linux) genauso wie mit den verbreiteten kommerziellen Unix-Versionen (SunOS/Solaris, AIX, HP/UX oder Ultrix) funktionieren. Geben Sie die Hoffnung nicht auf, wenn die Anleitung für Sie nicht genau wie beschrieben funktioniert. Auch wenn die Behandlung der Compilierung auf jedem einzelnen System den Rahmen dieses Buches sprengt, werde ich später in diesem Kapitel einige Verweise auf Hilfequellen geben.

Um mit dem Compilieren fortzufahren, müssen Sie auf jeden Fall zuerst die tar-Datei mit GNU gunzip und tar auspacken (wenn diese nicht auf Ihrem System installiert sind, können Sie gunzip von ftp://ftp.gnu.org/gnu/gzip/ und GNUs tar-Version von ftp://ftp.gnu.org/gnu/tar/ bekommen):

user@linux ~$ gunzip cvs-1.10.6.tar.gz user@linux ~$ tar xvf cvs-1.10.6.tar

Sie werden viele Dateinamen auf Ihrem Bildschirm vorbeiziehen sehen.

Danach haben Sie ein neues Verzeichnis auf Ihrer Maschine - cvs-1.10.6 - das mit dem cvs-Quelltext gefüllt ist. Wechseln Sie in dieses Verzeichnis und konfigurieren Sie CVS für Ihr System mit dem mitgelieferten configure-Skript:

user@linux ~$ cd cvs-1.10.6 user@linux ~/cvs-1.10.6$ ./configure creating cache ./config.cache checking for gcc... gcc checking whether we are using GNU C... yes checking whether gcc accepts -g... yes checking how to run the C preprocessor... gcc -E (etc)

Wenn das configure-Kommando beendet ist, weiß der Quelltextbaum alles, was über Compilieren auf Ihrer Maschine wissenswert ist. Der nächste Schritt ist:

user@linux ~/cvs-1.10.6$ make

(Den folgenden letzten Schritt werden Sie wahrscheinlich als Superuser durchführen müssen). Sie werden eine Menge Ausgaben vorbeifliegen sehen, danach tippen Sie:

root@linux ~/cvs-1.10.6# make install

Es fliegen noch mehr Ausgabezeilen vorbei; wenn diese durchgelaufen sind, wird CVS auf Ihrem System installiert sein.

Standardmäßig wird das ausführbare CVS-Programm als /usr/local/bin/cvs installiert werden. Dies setzt voraus, dass Sie ein vernünftiges make-Programm auf Ihrem System installiert haben (falls Sie kein make auf Ihrem System haben, können Sie das make-Programm des GNU-Projekts von ftp://ftp.gnu.org/gnu/make/ bekommen).

Wenn Sie CVS an einer anderen Stelle als /usr/local/bin installieren wollen, sollten Sie den Aufruf des einleitenden Konfigurationsschrittes ändern. Beispielsweise resultiert

user@linux ~/cvs-1.10.6$ ./configure --prefix=/usr

in einer Installation von CVS als /usr/bin/cvs (es wird immer als PREFIX/bin/cvs installiert). Das Standardpräfix /usr/local ist aber für die meisten Installationen richtig.

Bemerkung Ein Hinweis an erfahrene Benutzer: Auch wenn ältere Versionen von CVS aus mehr als einem ausführbaren Programm bestehen - da sie auch von einem installierten RCS abhingen - ist dies seit der Version 1.10 nicht mehr der Fall. Deshalb müssen Sie sich keine Gedanken über irgendwelche Bibliotheken oder ausführbaren Programme außer cvs selbst machen.

Wenn Sie nur vorhaben, CVS für den Zugriff auf entfernte Archive zu verwenden, ist die vorhergehende Anleitung ausreichend. Wenn Sie aber auch ein Archiv auf Ihrem System anbieten wollen, sind noch einige zusätzliche Schritte notwendig, die später in diesem Kapitel behandelt werden.

#### 2.1 Beschaffen und Installieren von CVS unter Windows

Wenn Sie nicht gerade extrem darauf versessen sind, den Quelltext für Ihre ausführbaren Programme zu besitzen, müssen Sie auf Ihrer Windows-Maschine CVS nicht aus dem Quelltext compilieren. Im Gegensatz zu Unix existieren die notwendigen Compilierwerkzeuge auf Ihrem Rechner wahrscheinlich noch nicht, also würde ein Bauen aus dem Quelltext bedeuten, dass Sie sich zuerst diese Werkzeuge besorgen müssten. Da ein solches Projekt die Grenzen dieses Buches sprengt, werde ich nur Anweisungen dafür geben, wie man ein vorcompiliertes CVS-Programm bekommen kann.

Beachten Sie zuerst, dass binäre Distributionen für Windows normalerweise nur für Hauptversionen - nicht für die Interimsversionen - gemacht werden und nicht auf dem GNU-FTP-Server zur Verfügung stehen. Also müssen Sie den Server von Cyclic Software verwenden, wo Sie im Hauptversionsverzeichnis http://download.cyclic.com/pub/cvs-1.10/ ein zusätzliches Unterverzeichnis sehen:

Index of /pub/cvs-1.10

    cvs-1.10.tar.gz 14-Aug-98 09:35 2.4M
    windows/

worin sich eine ZIP-Datei befindet:

Index of /pub/cvs-1.10/windows

    cvs-1.10-win.zip 14-Aug-98 10:10 589k

Diese ZIP-Datei enthält eine Binärdistribution von CVS. Laden Sie diese Datei herunter, und entpacken Sie sie:

user@linux ~$ unzip cvs-1.10-win.zip Archive: cvs-1.10-win.zip inflating: cvs.html inflating: cvs.exe inflating: README inflating: FAQ inflating: NEWS inflating: patch.exe inflating: win32gnu.dll

Die README-Datei enthält detaillierte Anweisungen. Für die meisten Installationen lassen sie sich wie folgt zusammenfassen: Legen Sie alle EXE- und DLL-Dateien in ein Verzeichnis, das in Ihrem PATH liegt. Wenn Sie zusätzlich die pserver-Methode zum Zugriff auf ein entferntes Archiv verwenden möchten, müssen Sie das Folgende in Ihre C:\AUTOEXEC.BAT-Datei schreiben und den Rechner neu starten: set HOME=C: Dies teilt CVS mit, wo die .cvspass-Datei zu speichern ist.

CVS unter Windows kann momentan keine Archive an entfernte Maschinen zur Verfügung stellen; es kann aber ein Client sein (um zu entfernten Repositories zu verbinden) und in lokalem Modus operieren (ein Archiv auf derselben Maschine verwenden). Größtenteils geht dieses Buch davon aus, dass CVS unter Windows als Client arbeitet. Es sollte aber nicht zu schwierig sein, ein lokales Archiv unter Windows aufzusetzen, wenn Sie die an Unix orientierte Anleitung im Rest des Kapitels gelesen haben.

Wenn Sie nur auf entfernte Archive zugreifen, müssen Sie noch nicht einmal CVS selbst verwenden. Es gibt ein Werkzeug namens WinCVS, das nur die Client-Seite von CVS implementiert. Es wird von CVS getrennt vertrieben, ist aber wie CVS unter der GNU General Public License frei verfügbar. Weitere Informationen sind von www.wincvs.org erhältlich.

#### 2.2 Beschaffen und Installieren von CVS auf einem Macintosh

CVS ist für den Macintosh verfügbar, allerdings nicht als Bestandteil der Hauptdistribution. Zurzeit gibt es sogar drei verschiedene Macintosh CVS-Clients:

- MacCvs - www.wincvs.org
- www.cyclic.com/maccvsclient/
- MacCVSPro - www.maccvs.org

Ich habe ehrlich gesagt keine Ahnung, welcher der beste ist. Probieren Sie sie alle aus, nicht notwendigerweise in der angegebenen Reihenfolge, und finden Sie heraus, welchen Sie mögen. MacCVSPro scheint aktiv weiterentwickelt zu werden. MacCvs ist offenbar ein Schwesterprojekt von WinCVS und teilt sich mit ihm eine Homepage (zum Zeitpunkt dieses Schreibens erklärt eine Bemerkung auf der WinCVS-Seite: "Die Entwicklung von MacCvs wird bald weitergehen", was immer das auch bedeuten mag).

#### 2.3 Beschränkungen der Macintosh- und Windows-Versionen

Die Macintosh- und Windows-Versionen von CVS sind generell in ihrer Funktionalität beschränkt. Sie können alle als Clients agieren, das heißt, sie können einen Archivserver kontaktieren, um eine Arbeitskopie zu erhalten, übergeben, aktualisieren und so weiter. Sie können aber nicht selbst Archive zur Verfügung stellen. Wenn Sie sie richtig einrichten, kann die Windows-Portierung ein Archiv auf der lokalen Platte verwenden, aber sie kann immer noch keine Archive für andere Maschinen zur Verfügung stellen. Im Allgemeinen gilt, dass Sie den CVS-Server auf einer Unix-Maschine laufen lassen müssen, wenn Sie ein im Netzwerk verfügbares CVS-Archiv haben