多個複製:https://stackoverflow.com/search?q=svnversion版本內部版本號與TortoiseSNV
我使用TortoiseSVN的SVN的服務作爲運行在Windows服務器上的服務。
我希望項目中的版本/內部版本號在項目提交時或之後進行更新。所以,正確的版本/在建項目將體現在幾個地方,如日誌文件,資源表,幫助>關於等等...
謝謝...
多個複製:https://stackoverflow.com/search?q=svnversion版本內部版本號與TortoiseSNV
我使用TortoiseSVN的SVN的服務作爲運行在Windows服務器上的服務。
我希望項目中的版本/內部版本號在項目提交時或之後進行更新。所以,正確的版本/在建項目將體現在幾個地方,如日誌文件,資源表,幫助>關於等等...
謝謝...
將某些東西整合到構建過程中,該構建過程將當前SVN修訂版寫入源版本文件(例如revision.h中只包含一個「const int revision = xxx;」),該版本不受版本控制(svn:ignore)將其包含在構建中。
這裏是一個非常簡單的代碼段的想法:
echo "const int revision = `svn info | grep Revision | cut -d":" -f 2`;" > revision.h
您可以使用修訂標記。
選擇一個文件,其中包含一些變量/常數與修訂號。將svn:關鍵字SVN屬性修改爲這個文件(文件中的人民幣,TortoiseSVN->屬性 - >新建,「svn:關鍵字」作爲名稱,「版本」作爲值)。現在在這個文件中,例如「$ Revision $」標籤的每一處都會被替換爲「$ Revision:7 $」。 不幸的是,這只是該文件的版本,所以每次構建編號增加時都必須「觸及」它。
可以在SVN Book
不會是從資源文件訪問或安裝腳本找到更多的關鍵字以這種方式工作。次要的是你想要的。 – Tim 2009-07-17 14:16:49
我不會說subwcrev不是正確的選擇 - 它可能是OP的問題。但我的建議可以從資源文件或安裝腳本中訪問。你也可以使用「sed」來替換像subwcrev那樣的佔位符。另外,它將是跨平臺的(Cygwin),可用於沒有安裝圖形SVN客戶端的CI構建從站。 – digitalbreed 2009-07-17 15:20:29