簡體   English   中英

MSBuild腳本中的TFS 2013分支名稱

[英]TFS 2013 Branch Name in MSBuild Script

我已經看到幾個提到的變量持有TFS分支名稱,從構建定義的源設置路徑中的最后一個目錄中提取,但我沒有在TFS 2013中工作。是否有一個變量將填充在我在TFS 2013中的MSBuild腳本(從構建定義觸發)?

這是我試過沒有運氣的,都是空白的:

<Message Text="SourceBranchName: $(SourceBranchName)" />    
<Message Text="Build.SourceBranch: %(Build.SourceBranch)" />
<Message Text="BranchName: $(BranchName)" />
<Message Text="Build.SourceBranchName: %(Build.SourceBranchName)" />
<Message Text="BUILD_SOURCEBRANCHNAME: $(BUILD_SOURCEBRANCHNAME)" />

使用TFS2013的MSBuild腳本中的環境變量數據不使用這種格式。

它應該是TF_BUILD_XXX

TF_BUILD_BUILDDIRECTORY: 構建代理工作目錄。 例如:C:\\ Build \\ BuildBot3 \\ CoolApp \\ CIBuild。

在TFS2013中使用XAML構建的官方教程 ,您可以參考此鏈接 - Team Foundation Build環境變量

如您所見,我們沒有與構建中使用的分支名稱相關的環境變量

對於變通方法,您可以使用客戶端API來獲取類似的信息。

IBuildDetail對象中有一個名為SourceGetVersion的屬性。 當使用構建定義中定義的默認分支手動執行或觸發構建定義時,此屬性只返回' T ',但如果構建定義是由對受監視分支的提交觸發的,則此屬性設置為分店名稱。

只需解析此屬性的值,您就應該能夠確切地確定哪個分支觸發了構建定義。 或者你也可以使用

TF_BUILD_SOURCEGETVERSION: 正在構建的版本(TFVC變更集或Git提交)。

您正在查看TFS 2015中引入的構建系統的文檔.TFS 2013僅支持XAML構建,該構建已棄用,因此越來越難以找到有關的文檔。

但是,有文檔可用。

這里的問題是你正在尋找TFS 2013中不存在的變量。你可以做的最好的是TF_BUILD_SOURCEGETVERSION ,它將是TFVC變更集或正在構建的Git提交散列。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM