Hier folgt eine Liste aller globalen Optionen für CVS
Die alphabetisch erste globale Option, die praktisch nie auf der
Kommandozeile verwendet wird. Sie wird mit dem pserver-Kommando zum
Aufbau eines authentifizierten Zugriffes zu dem angegebenen Archiv
verwendet. Dabei handelt es sich um das Hauptverzeichnis eines
Archivs, (wie /usr/local/cvsarchiv/), nicht um ein Unterverzeichnis
(wie /usr/local/cvsarchiv/projekt). Normalerweise ist die einzige
Stelle, an der diese Option überhaupt vorkommt in der Datei
/etc/inetd.conf (siehe Kapitel 4), genau wie das mit ihr verwendete
pserver Kommando. Jedes Archiv, auf das mit cvs pserver auf einem
bestimmten Rechner zugegriffen wird, benötigt eine entsprechende
--allow-root-Option in /etc/inetd.conf. Dies ist eine
Sicherheitsmaßnahme, die gewährleisten soll, dass niemand mittels
eines cvs pserver-Kommandos Zugriff auf private Archive erlangen
kann. (Siehe auch den Abschnitt Password Authentication Server im
Cederqvist.)
|
Authentifiziert jede Kommunikation mit dem Server. Diese Option hat
keinen Effekt, solange Sie nicht mittels GSSAPI-Server (gserver)
Verbindungen aufbauen. GSSAPI-Verbindungen sind in diesem Buch nicht
behandelt, weil sie noch immer relativ selten anzutreffen sind (auch
wenn sich das ändern könnte). Siehe auch die Abschnitte Global
Options und GSSAPI Authenticated im Cederqvist für mehr
Information zu diesem Thema.
|
Diese Option wurde früher dazu verwendet anzugeben, in welchem
Verzeichnis sich die RCS-Programmdateien befanden. CVS implementiert
inzwischen jedoch intern die RCS-Funktionen, sodass diese Option nur
noch aus Gründen der Kompatibilität beibehalten wird. Sie hat
keinerlei Wirkung mehr.
|
Diese Option gibt das Archiv an. ARCHIV kann entweder einfach ein
absoluter Pfad oder ein komplexerer Ausdruck sein, der eine
Verbindungsmethode, einen Benutzer- und Rechnernamen sowie einen Pfad
enthält. In letzterem Fall sieht die generelle Ausdrucksform so aus:
:METHODE:BENUTZER@RECHNER:PFAD_ZUM_ARCHIV
Hier ein paar Beispiele zu den üblichen Verbindungsarten:
:ext:jrandom@floss.red-bean.com:/usr/local/archiv
- Baut eine Verbindung unter Verwendung von rsh, ssh oder eines anderen externen
Programmes auf. Falls die CVS_RSH-Umgebungsvariable nicht gesetzt
ist, ist die Standardeinstellung rsh, ansonsten wird der Wert dieser
Variablen verwendet.
:server:jrandom@floss.red-bean.com:/usr/local/archiv
- Wie :ext:, nutzt aber die interne rsh-Variante von CVS. (Diese Option ist möglicherweise nicht auf allen Plattformen verfügbar.)
:pserver:jrandom@floss.red-bean.com:/usr/local/archiv
- Baut mit Hilfe des Passwortauthentifizierungs-Servers eine Verbindung auf (siehe Der Passwortauthentifizierungs-Server in Kapitel 4; siehe auch das login-Kommando).
:kserver:jrandom@floss.red-bean.com:/usr/local/archiv
- Baut eine Verbindung mit Hilfe der Kerberos-Authentifizierung auf.
:gserver:jrandom@floss.red-bean.com:/usr/local/archiv
- Baut eine Verbindung unter Verwendung der GSSAPI-Authentifizierung auf.
:fork:jrandom@floss.red-bean.com:/usr/local/archiv
- Baut eine Verbindung zu einem lokalen Archiv auf, benutzt aber das
Client/Server-Protokoll, anstatt direkt auf die Dateien zuzugreifen.
Dies kann nützlich sein, um das Verhalten einer CVS-Konfiguration im
Netz auf dem eigenen Rechner zu testen und Fehler zu suchen.
:local:jrandom@floss.red-bean.com:/usr/local/newrepos
- Greift direkt auf ein lokales Archiv zu, so als wäre nur der absolute Pfad angegeben
worden.
|
Startet EDITOR für Ihre commit-Mitteilung, falls diese
nicht auf der Kommandozeile mit der -m-Option angegeben wurde.
Normalerweise startet CVS den Editor abhängig vom Inhalt der
Umgebungsvariablen CVSEDITOR, VISUAL oder EDITOR (in dieser
Reihenfolge), falls keine Mitteilung mit -m angegeben wird. Falls
alles schief geht, versucht CVS, den verbreiteten Unix-Editor vi zu
starten. Wenn Sie sowohl -e also auch -m mit commit verwenden, wird
das -e zu Gunsten der bei -m angegebenen Mitteilung ignoriert. (Daher
ist es unproblematisch, -e in einer .cvsrc-Datei zu verwenden.)
|
Diese globale Option unterbindet das Lesen der .cvsrc-Datei.
|
Diese beiden Optionen bewirken dasselbe. Sollte kein KOMMANDO
angegeben sein, dann wird in einer kurzen Ausgabe die Bedienung der
Grundfunktionen erläutert.
|
Gibt eine Liste aller verfügbaren Optionen für CVS samt kurzer
Erklärung aus.
|
Gibt eine Liste aller CVS-Kommandos und ihrer Kurzformen (up für
update usw.) aus.
|
Unterdrückt das Mitschneiden dieses Kommandos in die
CVSROOT/history-Datei im Archiv. Das Kommando wird zwar ausgeführt,
aber es wird kein Eintrag in der History-Datei erzeugt.
|
Ändert keine Datei in der Arbeitskopie oder im Archiv. Mit anderen
Worten, diese Option führt zu einer Art Testlauf, in dem CVS zwar fast
alle Kommandos abarbeitet, aber nichts wirklich verändert. Das kann
nützlich sein, wenn Sie sehen wollen, was ein Kommando bewirkte, wenn
Sie es tatsächlich anwenden würden. Ein übliches Szenario ist, wenn
Sie sehen möchten, welche Dateien in Ihrem Arbeitsverzeichnis
inzwischen verändert wurden, diese aber noch nicht aktualisieren
möchten (was die Veränderungen aus dem Archiv in Ihre Dateien
übertragen würde). Durch die Ausführung des Kommandos cvs -n update
können Sie so eine Zusammenfassung der Veränderungen angezeigt
bekommen, ohne Ihre Arbeitskopie der Daten anzutasten.
|
Diese Option befiehlt CVS, etwas leiser zu arbeiten und unnötige
Informationen nicht auszugeben. Was als notwendig angesehen wird,
hängt hierbei von dem Kommando ab. Zum Beispiel werden bei der
Aktualisierung die Nachrichten unterdrückt, die CVS normalerweise
ausgibt, wenn es in ein neues Unterverzeichnis der Arbeitskopie
eintritt - die einzeiligen Statusmeldungen über veränderte oder
aktualisierte Dateien werden jedoch trotzdem angezeigt.
|
Wie -q, nur dass CVS hier lediglich die allernötigsten Informationen
ausgibt. Kommandos, deren einziger Zweck es ist, Ausgaben zu erzeugen
(wie z.B. diff und annotate), werden davon natürlich nicht
beeinflusst. Hingegen geben Befehle, die unabhängig von irgendwelchen
Ausgaben ihre Aufgabe erfüllen können (wie z.B. update und commit),
nichts aus.
|
Bewirkt, dass neue Arbeitsdateien ohne Schreibzugriff erzeugt
werden (hat also dieselbe Wirkung wie die CVSREAD-Umgebungsvariable).
Wenn Sie diese Option verwenden, werden bei Dateneinspielungen und
-aktualisierungen die Dateien in Ihrer Arbeitskopie als nur lesbar
markiert (sofern Ihr Betriebssystem diese Option unterstützt). Genau
genommen habe ich keine Ahnung, warum je jemand diese Option verwenden
sollte.
|
Hiermit wird die interne CVS-Variable namens VARIABLE auf den Wert
WERT gesetzt. Auf der Seite des Archivs können die
CVSROOT/*info-Kontrolldateien solche Variablen in Werte übersetzen,
die mit der -s-Option gesetzt wurden. Wenn zum Beispiel die Datei
CVSROOT/loginfo eine Zeile wie diese enthält
myproj /usr/local/bin/foo.pl ${=FISCH}
|
und dann jemand ein commit von myproj wie folgt startet
user@linux ~$
cvs -s FISCH=Karpfen commit -m "Köder-Bug behoben"
|
dann wird das Skript foo.pl mit Karpfen als Argument gestartet. Man
beachte jedoch die schräge Syntax: Das Dollarzeichen, die geschweifte
Klammer und das Gleichheitszeichen - fehlt eines der drei, dann
funktioniert die Zuweisung nicht korrekt. Variablennamen dürfen
lediglich Buchstaben, Zahlen und Unterstriche enthalten. Obwohl es
nicht unbedingt erforderlich ist, dass alle Buchstaben groß
geschrieben werden, scheinen sich doch die meisten Leute an diese
Konvention zu halten. Das -s-Flag kann in einem Kommando beliebig oft
hintereinander verwendet werden. Falls sich jedoch eines der
Kontrollskripten auf Variablen bezieht, die nicht beim Aufruf gesetzt
wurden, dann wird zwar das Skript ausgeführt, aber eine Warnung an den
Benutzer ausgegeben und keiner einzigen Variablen ihr Wert
zugewiesen. Wenn zum Beispiel in loginfo Folgendes steht
myproj /usr/local/bin/foo.pl ${=FISCH} ${=VOGEL}
|
aber derselbe Befehl wie vorhin ausgeführt wird
user@linux ~$
cvs -s FISCH=Karpfen commit -m "Köder-Bug behoben"
|
dann bekommt der Benutzer, der den Befehl gestartet hat, eine Warnung wie
loginfo:31: no such user variable ${=BIRD}
|
und das Skript foo.pl wird ohne Argumente ausgeführt. Wenn das
Kommando jedoch so aussieht:
user@linux ~$
cvs -s FISCH=Karpfen -s VOGEL=Geier commit -m "Köder-Bug behoben"
|
dann wird keine Warnung ausgegeben, und foo.pl wird wie erwartet mit
den Argumenten Karpfen und Geier aufgerufen. In beiden Fällen würde
der Commit selbst korrekt durchgeführt.
Bemerkung
Obwohl all diese Beispiele commit verwenden, kann die Zuweisung von
Variablen mit jedem CVS-Kommando geschehen, das eine CVSROOT/
Kontrolldatei auslöst - darum ist -s eine globale Option.
(Siehe auch den Abschnitt Archivverwaltungsdateien weiter hinten in
diesem Kapitel zur Expansion von Variablen in Kontrolldateien.)
|
Speichert alle temporären Dateien in DIR anstatt da, wo CVS sie
normalerweise ablegt. (Dies überschreibt im Besonderen den Wert der
Umgebungsvariablen TMPDIR, falls sie existiert.) DIR sollte ein
absoluter Pfad sein. Diese Option ist nützlich, falls Sie als Benutzer
keinen Schreibzugriff auf die üblichen temporären Verzeichnisse
besitzen.
|
Verfolgt die Durchführung eines CVS-Kommandos. Dies veranlasst CVS
genau alle Schritte anzuzeigen, die es durchführt, um einen Befehl
auszuführen. Das kann sich besonders im Zusammenhang mit der Option
-n als nützlich erweisen, damit Sie sich so im Detail die Effekte
eines ungewöhnlichen Befehles im Voraus ansehen können, ohne ihn
wirklich auszuführen. Die Option ist ebenfalls praktisch, um
herauszufinden, warum ein Kommando nicht funktioniert.
|
Veranlasst CVS, seine vollständige Version und Urheberrechtsangaben auszugeben.
|
Bewirkt, dass neue Arbeitsdateien mit Schreibzugriff ausgestattet
werden (überschreibt damit jeden Wert, den eventuell die
Umgebungsvariable CVSREAD haben könnte). Weil normalerweise sowieso
alle Dateien mit Schreibzugriff versehen werden, wird diese Option nur
selten benutzt.
Werden beide Optionen, -r und -w, angegeben, so gilt die -w-Option.
|
Verschlüsselt jede Kommunikation mit dem Server. Diese Option hat
keine Wirkung, solange nicht eine Verbindung via GSSAPI zum Server
(gserver) besteht. GSSAPI-Verbindungen werden in diesem Buch nicht
behandelt, weil sie immer noch eher selten benutzt werden - obwohl
sich das ändern könnte). (Siehe auch die Abschnitte Global Options
und GSSAPI Authenticated im Cederqvist mit mehr Informationen zu
dieser Thematik.)
|
Stellt die Stärke der Datenkompression für die Verbindungen zum Server
ein. Das Argument GZIPLEVEL muss eine Zahl zwischen eins und neun
sein. Eins steht für minimale Kompression (dafür schnell); neun
hingegen hat nur auf sehr schnellen Rechnern oder sehr langsamen
Verbindungen Sinn (komprimiert sehr stark, braucht aber viel
Rechenzeit). Die meisten Benutzer dürften Werte zwischen drei und
fünf praktikabel finden. Das Leerzeichen zwischen -z und seinem
Argument ist optional.
|
|