2017-06-12 9 views
0

ブランチ名としてTFS 2013に環境変数があります。しかし私の会社はまだTFS 2012を使用しています。ビルド中のTFS 2012 GetBranchの名前

TFS 2012でビルド中にブランチ名を取得する方法は誰にも分かりますか?

TFSビルドAPIにブランチ名のプロパティを持つクラスはありますか?

まだ1つを見つけていません。

はあなたがIBuildDetailsを通じてこのビルドのために設定されているパスにアクセスすることができ、事前

答えて

0

でいただきありがとうございます。

ちょうどあなたの作業 フォルダのルートである1チェックし、 BranchObjectsを照会するVersionControlServerクラスを使用します。

サンプルコード:

IBuildDetail buildDetail = context.GetExtension<IBuildDetail>(); 

var workspace = buildDetail.BuildDefinition.Workspace; 
var versionControlServer = buildDetail.BuildServer.TeamProjectCollection.GetService<VersionControlServer>(); 

var branches = versionControlServer.QueryRootBranchObjects(RecursionType.Full); 
var referencedBranches = listOfFilePaths.GroupBy(
       file => 
       branches.SingleOrDefault(
        branch => file.ServerItem.StartsWith(branch.Properties.RootItem.Item) 
       ) 
      ).Where(group => group.Key != null); 

詳細はこの質問にjessehouwingの返信を参照してください。Include branch name in post build event on Team Build

関連する問題