[英]get GIT or SVN revision number into NSIS script
我們在這里有一個SVN存儲庫和一個GIT存儲庫。 我們目前都擁有這兩個職位,是因為我們試圖說服其余員工,使用后者比使用前者就足夠了。 無論如何,我想將版本號合並到.exe文件中(使用或)到我正在編寫的NSIS腳本中。 但是我似乎無法理解如何在代碼中實現它。 到目前為止,這就是我所擁有的。
Section
nsExec::Exec '"git" describe head'
Pop $0 #return value/error/timeout
Pop $1 #printed text
DetailPrint " Return value: $0"
DetailPrint " Version printed: $1"
SectionEnd
偽代碼是:如果存在GIT,則GIT描述頭,否則,如果SVN存在,則SVN信息解析版本號,否則解析程序集信息(稱為version.txt)
我將如何繼續為NSIS編寫代碼? 目標計算機是Windows 7,8&8.1
使用修訂版1.4b.2和一些GIT哈希(如果存在GIT,則為true),最終輸出應類似於KART.-1.4b.3.nte3j-installer.exe。 我所擁有的不多,但除此之外,.exe可以很好地構建和安裝,它只是在那里獲得了轉速號。
如果要獲取修訂號並將其用作生成的設置的文件名(或UI文本)的一部分,則必須使用編譯時命令,如!system
和!searchparse
...
編輯:
!tempfile StdOut
!echo "${StdOut}"
!system '"svn" info c:\foo\trunk > "${stdout}"'
!searchparse /file "${StdOut}" "Revision: " SVNREV
!delfile "${StdOut}"
!undef StdOut
Name "MyApp SVN.${SVNREV}"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.