Schlüsselwortersetzung

Wenn eine Quell- und eine Zieldatei angegeben werden, kopiert SubWCRev die Quelldatei zur Zieldatei und ersetzt dabei die folgenden Schlüsselwörter:

Tabelle 6.3. Liste verfügbarer Schlüsselwörter

SchlüsselwortBeschreibung
$WCREV$Wird durch die höchste Revisionsnummer in der Arbeitskopie ersetzt.
$WCREV&$Wird durch die höchste Revisionsnummer in der Arbeitskopie ersetzt und mit dem Wert nach dem & Zeichen logisch UND verknüpft. Zum Beispiel: $WCREV&0xFFFF$
$WCREV-$, $WCREV+$Wird durch die höchste Revisionsnummer in der Arbeitskopie ersetzt. Der Wert hinter dem + oder - Zeichen wird addiert bzw. subtrahiert. Zum Beispiel: $WCREV-1000$
$WCDATE$, $WCDATEUTC$Wird durch Datum/Zeit der höchsten übertragenen Revision ersetzt. Als Vorgabe wird das internationale Format genutzt: jjjj-mm-tt hh:mm:ss. Alternativ können Sie ein eigenes Format angeben, das mittels strftime() formatiert wird, z.B. $WCDATE=%a %b %d %I:%M:%S %p$. Eine Liste der verfügbaren Formatieranweisungen finden Sie unter folgender Onlinereferenz.
$WCNOW$, $WCNOWUTC$Wird durch Datum/Zeit der Systemuhr ersetzt. Kann zum Beispiel dazu dienen, den Zeitpunkt der Erstellung festzuhalten. Die Formatierung erfolgt wie bei $WCDATE$ beschrieben.
$WCRANGE$Wird durch den Revisionsnummernbereich der Arbeitskopie ersetzt. Wenn sich die Arbeitskopie in einem konsistenten Zustand befindet, eine einzelne Revisionsnummer. Wenn die Arbeitskopie gemischte Revisionen enthält, weil sie entweder nicht aktuell ist oder weil gezielt auf eine bestimmte Revision aktualisiert wurde, wird ein Bereich in der Form 100:200 ausgegeben.
$WCMIXED$$WCMIXED?TText:FText$ wird durch TText ersetzt, falls die Arbeitskopie gemischte Revisionen enthält oder FText, falls nicht.
$WCMODS$$WCMODS?TText:FText$ wird durch TText ersetzt, falls die Arbeitskopie lokale Änderungen enthält oder FText, falls nicht.
$WCUNVER$$WCUNVER?TText:FText$ wird durch TText ersetzt, falls die Arbeitskopie nicht versionierte Objekte enthält oder FText, falls nicht.
$WCEXTALLFIXED$$WCEXTALLFIXED?TText:FText$ wird ersetzt durch TText falls alle Externals auf eine expliziten Revision festgesetzt sind, ansonsten durch FText.
$WCISTAGGED$$WCISTAGGED?TText:FText$ wird durch TText ersetzt, wenn die URL des Projektarchivs die Klassifizierungsmuster für tags enthält, ansonsten durch FText.
$WCURL$Wird durch die URL des Projektarchivs ersetzt, auf das die an SubWCRev übergebene Arbeitskopie zeigt.
$WCINSVN$$WCINSVN?TText:FText$ wird durch TText ersetzt, falls der Eintrag versioniert ist oder FText, falls nicht.
$WCNEEDSLOCK$$WCNEEDSLOCK?TText:FText$ wird durch TText ersetzt, falls der Eintrag die svn:needs-lock Eigenschaft hat oder FText, falls nicht.
$WCISLOCKED$$WCISLOCKED?TText:FText$ wird durch TText ersetzt, falls der Eintrag gesperrt ist oder FText, falls nicht.
$WCLOCKDATE$, $WCLOCKDATEUTC$Wird durch das Sperrdatum ersetzt. Die Formatierung erfolgt wie bei $WCDATE$ beschrieben.
$WCLOCKOWNER$Wird den Namen des Sperreigners ersetzt.
$WCLOCKCOMMENT$Wird durch den Sperrkommentar ersetzt.
$WCUNVER$$WCUNVER?TText:FText$ wird durch TText ersetzt, falls die Arbeitskopie nicht versionierte Objekte enthält oder FText, falls nicht.


SubWCRev unterstützt keine verschachtelten Ausdrücke dieser Art:

#define SVN_REVISION    "$WCMIXED?$WCRANGE$:$WCREV$"
      

Sie können das gewünschte Ergebnis jedoch auf folgende Weise erreichen:

#define SVN_RANGE       $WCRANGE$
#define SVN_REV         $WCREV$
#define SVN_REVISION    "$WCMIXED?SVN_RANGE:SVN_REV$"
      

Tipp

Einige dieser Schlüsselwörter beziehen sich auf einzelne Dateien, statt auf ganze Arbeitskopien. Deshalb ergeben diese auch nur einen Sinn, wenn SubWCRev für eine einzelne Datei aufgerufen wird. Dies ist der Fall für $WCINSVN$, $WCNEEDSLOCK$, $WCISLOCKED$, $WCLOCKDATE$, $WCLOCKOWNER$ und $WCLOCKCOMMENT$.