[英]Get Visual Studio changeset as part of the revision
多年來,我一直在使用Subversion。 我發布的軟件版本號的格式為XXX {SVN REV},我在Visual Studio中使用一個預構建事件來填充ac#修訂文件:
namespace Revision
{
internal static class Svnstrings
{
static public int WCREV = 1959;
static public string WCDATE = "2017/12/08 21:48:52";
static public string WCNOW = "2017/12/28 14:01:35";
static public string WCRANGE = "1949:1959";
static public string WCMIXED = "Mixed update revision";
static public string WCMODS = "Modified";
static public string WCURL = "https://app.deveo.com/SrcCtrl/projects/myProject/repositories/subversion/myProject/trunk/mySource/myProject/Revision";
static public string WCINSVN = "Versioned";
static public string WCNEEDSLOCK = "Lock not required";
static public string WCISLOCKED = "Not Locked";
static public string WCLOCKDATE = "1970/01/01 00:00:00";
static public string WCLOCKOWNER = "";
static public string WCLOCKCOMMENT = "";
}
}
我最近將我的源代碼控制切換到Visual Studio TFS,我想做類似的事情,在WCREV中獲取更改集值。
在使用Subversion十多年后,仍然可以學習復雜的代碼,但仍然可以學習新的源代碼控制,並且仍然可以學習基礎知識,也許有人有更好的主意。
與SVN不同,我們沒有隨TFS WCREV.exe
安裝WCREV.exe
。
在TFS中,最簡單的方法是使用內部版本號作為您的版本號。 有一個全局.NET版本控制策略: AssemblyInformationalVersion 。 您可以使用此策略向軟件添加版本控制。 您可以使用Powershell腳本對程序集進行版本控制。
基於此產品版本,powershell腳本將在后台執行魔術操作,以替換Assembly Info文件中AssemblyVersion , AssemblyFileVersion和AssemblyInformationalVersion的所有版本控制值。 產品版本將整體傳遞給AssemblyVersion和AssemblyInformationalVersion屬性。 AssemblyFileVersion將替換為完整版本號,該完整版本號將包含產品版本的主要和次要版本號,基於儒略語的日期和遞增的內部版本號 。
對於匯編文件版本= 2.7.15169.03的含義
- 2 =>取自“主要”產品版本
- 7 =>取自“次要”產品版本
- 15169 =>由構建過程生成:“ 15” = 2015年,“ 169” = 2015年
- 3 =>第三版,於2015年第169天運行
有關更多詳細信息,您可以查看以下精彩文章: TFS Build 2015…和版本控制! 以及類似的主題vNext增強功能–管理版本號
至於您要獲取/設置裝配信息中的變更集編號。
您可以使用$(Build.SourceVersion)
版本號格式的$(Build.SourceVersion)
來實現,例如
$(BuildDefinitionName)_$(date:yyyyMMdd)_$(Build.BuildId).$(Build.SourceVersion)$(rev:.r)
但是,此$(Build.SourceVersion)僅在提交時(在持續集成中)自動觸發生成時才起作用。原因是在運行手動生成時,必須輸入Source Version字段才能進行填充。 有關更多詳細信息,請檢查以下內容: VSO vNext Build中的Build.SourceVersion為空白
您還可以使用PowerShell腳本獲取源版本變更集編號,並將其應用到內部版本號或AssemblyInfo中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.