Manuals

Przykład słowa kluczowego

Poniższy przykład pokazuje, jak słowa kluczowe z pliku szablonu są podstawiane w pliku wynikowym.

// Plik testowy dla SubWCRev

char *Revision      = "$WCREV$";
char *Revision16    = "$WCREV&0xFF$";
char *Revisionp100  = "$WCREV+100$";
char *Revisionm100  = "$WCREV-100$";
char *Modified      = "$WCMODS?Modyfikowany:Nie modyfikowany$";
char *Unversioned   = "$WCUNVER?Znaleziono niewersjonowane obiekty:brak niewersjonowanych obiektów$";
char *Date          = "$WCDATE$";
char *CustDate      = "$WCDATE=%a, %d %B %Y$";
char *DateUTC       = "$WCDATEUTC$";
char *CustDateUTC   = "$WCDATEUTC=%a, %d %B %Y$";
char *TimeNow       = "$WCNOW$";
char *TimeNowUTC    = "$WCNOWUTC$";
char *RevRange      = "$WCRANGE$";
char *Mixed         = "$WCMIXED?Wersja mieszana WC:Nie mieszana$";
char *ExtAllFixed   = "$WCEXTALLFIXED?Wszystkie zewnętrzne naprawione:Nie wszystkie zewnętrzne naprawione$";
char *IsTagged      = "$WCISTAGGED?Tagowane:Nie tagowane$";
char *URL           = "$WCURL$";
char *isInSVN       = "$WCINSVN?wersjonowane:nie wersjonowane$";
char *needslck      = "$WCNEEDSLOCK?TRUE:FALSE$";
char *islocked      = "$WCISLOCKED?zablokowane:nie zablokowane$";
char *lockdateutc   = "$WCLOCKDATEUTC$";
char *lockdate      = "$WCLOCKDATE$";
char *lockcustutc   = "$WCLOCKDATEUTC=%a, %d %B %Y$";
char *lockcust      = "$WCLOCKDATE=%a, %d %B %Y$";
char *lockown       = "$WCLOCKOWNER$";
char *lockcmt       = "$WCLOCKCOMMENT$";

#if $WCMODS?1:0$
#error Source is modified
#endif

// End of file

Po uruchomieniu SubWCRev.exe path\to\workingcopy testfile.tmpl testfile.txt, plik wyjściowy testfile.txt będzie wyglądał tak:

// Plik testowy dla SubWCRev

char *Revision  = "22837";
char *Revision16 = "53";
char *Revisionp100 = "22937";
char *Revisionm100 = "22737";
char *Modified  = "Modyfikowany";
char *Unversioned = "brak niewersjonowanych danych";
char *Date = "2012/04/26 18:47:57";
char *CustDate  = "Thu, 26 April 2012";
char *DateUTC = "2012/04/26 16:47:57";
char *CustDateUTC = "Thu, 26 April 2012";
char *TimeNow  = "2012/04/26 20:51:17";
char *TimeNowUTC = "2012/04/26 18:51:17";
char *RevRange = "22836:22837";
char *Mixed  = "Wersja mieszana WC";
char *ExtAllFixed = "Wszystkie zewnętrzne naprawione";
char *IsTagged  = "Nie tagowane";
char *URL = "https://tortoisesvn.googlecode.com/svn/trunk";
char *isInSVN = "wersjonowane";
char *needslck = "FALSE";
char *islocked = "nie zablokowany";
char *lockdateutc = "1970/01/01 00:00:00";
char *lockdate = "1970/01/01 01:00:00";
char *lockcustutc   = "Thu, 01 January 1970";
char *lockcust  = "Thu, 01 January 1970";
char *lockown = "";
char *lockcmt = "";

#if 1
#error Source is modified
#endif

// End of file

Podpowiedź

Pliki takie jak ten zostaną włączone do kompilacji więc można oczekiwać, iż będą wersjonowane. Upewnijcie się, by wersjonować plik szablonu, a nie wygenerowany plik, w przeciwnym razie za każdym razem po regeneracji pliku wersji musicie zatwierdzić zmianę, co z kolei oznacza, że ​​plik wersji musi zostać zaktualizowany.

TortoiseSVN homepage