2016-04-15 10 views
0

我想在我的項目內部版本號格式中設置一個順序值。目的是爲不同代理中的提交構建設置一個相同的序列號,併爲同一分支上的每個新提交增加一個序列號。把內置數字格式的分支承諾位置

使用構建編號是不可能的,因爲有時我們必須取消一些構建,而運行構建的不同代理髮散。使用提交哈希設置相同的內部版本號,但不是順序的。

我想到了分支上的提交位置,但沒有找到讓腳本通過分支並計數的方法。

現在使用這種紙條上每個版本的配置

$BuildNumber = "%Major.Minor%" 
$Hash = "%build.vcs.number%" 
$ShortHash = $Hash.substring(0,3) 
Write-Host "##teamcity[buildNumber '$BuildNumber.$ShortHash']" 

對此有何knoweledge?

+0

你可以考慮使用命令「混帳轉列表--count 」得到一個序列號爲指定的提交。更多信息執行「git help rev-list」。 –

+0

'git describe'的修剪輸出(在父母中有一些標籤)也可以工作 –

回答

0

我會看看GitVersion,它是一個幫助您在項目中實現語義版本控制的工具。這將通過分支併爲您計算提交位置,併爲此生成內部版本號。

該工具爲TeamCity提供Meta Runner,但檢出必須發生在代理上(這聽起來像你正在做的),因爲他們需要重新創建git存儲庫。

How it works

TeamCity setup

希望這有助於