Normalerweise expandiert CVS Schlüsselwörter, solange Sie ihm nicht befehlen, das nicht zu tun. Sie können die Schlüsselwortersetzung für eine Datei permanent verhindern, indem Sie die -k-Option angeben, wenn Sie die Datei dem Projekt hinzufügen, oder Sie können sie später deaktivieren, indem Sie den Befehl admin mit der Option -k aufrufen. Die -k-Option bietet mehrere verschiedene Methoden der Schlüsselwortkontrolle; üblicherweise werden Sie o oder b benötigen, wie zum Beispiel:
user@linux ~$ cvs add -ko neue_datei.txt
|
Dieser Befehl fügte die Datei neue_datei.txt dem Projekt hinzu, wobei die Schlüsselwortersetzung abgeschaltet ist. Es setzt die Schlüsselwortersetzungs-Methode der Datei auf o fest, was so viel wie keine Ersetzung bedeutet. (Genau genommen steht das o für old3, was bedeutet, dass das Wort mit seinem alten Wert - also durch sich selbst - ersetzt wird, was effektiv in keiner Änderung resultiert. Ich bin sicher, diese Logik ergab zum damaligen Zeitpunkt für irgendjemanden einen Sinn.)
Die Schlüsselwortersetzungs-Methode für jede einzelne Datei wird im Archiv gespeichert. Doch kann zudem jede Arbeitskopie ebenfalls ihre eigene lokale Einstellung besitzen - bewirkt durch die -k-Optionen zu checkout und update. Man kann außerdem Ersetzungsmethoden mit der -k-Option zu diff lediglich für die Dauer eines einzigen Befehls zur Anwendung bringen.
Hier sind alle möglichen Methoden, angegeben mit vorne angefügter -k-Option (so, wie man sie auf der Kommandozeile schreiben würde). Jede dieser Optionen kann sowohl als standardmäßige als auch als lokale Schlüsselwortersetzungs-Methode für eine Datei verwendet werden:
-
-kkv
- Schlüsselwort und Wert; dies ist die normale Schlüsselwortexpansions-Methode, daher muss sie nicht explizit für neue Dateien mit angegeben werden. Sie könnten sie jedoch benötigen, um eine Datei mit einer anderen Methode zurückzusetzen.
-
-kkvl
- Wie -kkv, beinhaltet aber zusätzlich den Namen desjenigen, der die Revision gebunden hat, falls diese auf einem bestimmten Wert gehalten wird. (Siehe die -l-Option zum Befehl admin für mehr Informationen dazu.)
-
-kk
- Schreibt keine Werte in Schlüsselwortfelder, sondern benutzt lediglich den Namen des Schlüsselwortes. Mit dieser Option würden zum Beispiel:
$Revision: 1.5 $
und
$Revision$
beide expandiert (okay, eher kontrahiert) zu:
$Revision$
-
-ko
- Wiederverwendung des Wortes, das in der Datei gefunden wird (o für old, wie oben beschrieben), gerade so, wie es vor dem commit in der Arbeitskopie stand.
-
-kb
- Wie -ko, zusätzlich wird aber noch die sonst zwischen unterschiedlichen Plattformen übliche automatische Umwandlung von Zeilenendungen unterdrückt. Das b steht für binär; es ist die Methode, die für Binärdateien verwendet werden sollte.
-
-kv
- Ersetzt das Schlüsselwort durch seinen Wert, so wird zum Beispiel
$Revision$
umgewandelt zu:
1.5
Natürlich wird in diesem Fall nach der ersten keine weitere Ersetzung stattfinden, sodass diese Methode mit Bedacht verwendet werden sollte.
|