visual-studio-2015 - 从特定团队项目中获取代码分支
问题描述
我正在尝试通过代码获取 TFS 中的代码分支列表,但仅限于特定团队项目下的代码分支。我当前使用的代码让我返回所有团队项目中的所有分支,无论它们是活动的还是已删除的。
如何过滤结果以仅从我特别关注的团队项目中带回结果?
List<string> listOfBranches = new List<string>();
TfsTeamProjectCollection tpc = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(new Uri(@"MyTFSCollection"));
VersionControlServer vcs = (VersionControlServer)tpc.GetService(typeof(VersionControlServer));
var allProjects = tpc.GetService(typeof(TeamProject));
var branchObjects = vcs.QueryRootBranchObjects(RecursionType.Full);
foreach (var branch in branchObjects)
{
var branchName = branch.Properties.RootItem.Item;
var parentFolder = branchName.Substring(0, branchName.LastIndexOf('/'));
listOfBranches.Add(branchName);
}
listOfBranches.Sort();
解决方案
它无法使用 SOAP api 在特定团队项目下分支。您必须使用带有参数的REST APIscopePath
:
Get http://TFS2015:8080/tfs/DefaultCollection/teamproject/_apis/tfvc/branches?scopePath=&/teamproject&api-version=2.2
推荐阅读
- python - 在for循环中比较来自元组的整数
- javascript - 如何获取嵌套对象的键
- c++ - 用于地图的 glm 重载运算符不起作用
- java - 当脚本作为服务运行时,文件上传在 Jenkins 中不起作用(Selenium/Java)
- css - 文本下用不同颜色的下划线
- sql-server - 快照复制显示错误“步骤定义不正确,因此无法运行”
- c# - 错误 CS1955 不可调用的成员 'Particle Emitter.emit' 不能像方法一样使用
- java - Fitnesse Git 插件 ClassNotFoundException
- php - Paypal 按钮将 url 返回到 WordPress 并显示付款信息
- android - 当我尝试实现 onClickListener 时应用程序崩溃