首页 > 解决方案 > 用于创建 TFVC 分支的 VSTS REST API

问题描述

我正在尝试自动化一些与构建相关的任务,其中包括为每个版本创建新的发布分支和构建定义。我使用VSTS TFVC进行版本管理。当我尝试使用 TFS REST API 执行此操作时,我找不到任何用于创建分支的 API(微软文档)。

我可以看到.NET API可用于执行此操作;找不到一个作为 REST API。

标签: restazure-devopstfvcazure-devops-rest-api

解决方案


正如您在“分支”页面中看到的那样,没有任何方法可以使用 Rest API 创建分支。大多数情况下,您现在只能使用版本控制 API 读取/获取信息。

如果您不想使用 C#,可以使用 Powerhshell 自动执行该过程:

param(

)
begin
{
 # load the required dll's
    [void][System.Reflection.Assembly]::LoadWithPartialName("Microsoft.TeamFoundation.Client")
    [void][System.Reflection.Assembly]::LoadWithPartialName("Microsoft.TeamFoundation.VersionControl.Client")   
}

process
{
 $server = New-Object Microsoft.TeamFoundation.Client.TeamFoundationServer("http://tfsserver:8080/tfs/DefaultCollection")

 $vcServer = $server.GetService([Microsoft.TeamFoundation.VersionControl.Client.VersionControlServer]); 

 $changesetId = $vcServer.CreateBranch('$/Demo/Code/Main', '$/Demo/Code/Dev/Branch', [Microsoft.TeamFoundation.VersionControl.Client.VersionSpec]::Latest, $null, "New branch from script", $null, $null, $null)

 "Branch created with ChangesetID: $changesetId"
}

推荐阅读