TFS客户端C#API – 获取项目的所有变更集
VS 2010的Microsoft TFS客户端:
http://msdn.microsoft.com/en-us/library/microsoft.teamfoundation.versioncontrol.client.item(v=vs.100).aspx
- 我(即我的代码)有一个Changeset。
- 我迭代到一个特定的变化。
- 我在变化中有一个项目。
现在,我希望获得对该项目进行更改的所有变更集。
有人可以告诉我最好的方法吗?
我可以迭代相关分支的所有变更集,这将是非常低效的。
爱德华是对的。 他有资格支持它。 (请参阅他的个人资料说明)VersionControlServer.QueryHistory是您需要使用的方法。 有几种方法可以使用它,我只是在下面描述一个方法,假设该项目的服务器路径对您来说很重要…
首先,您需要Item的服务器路径:
string serverPath = Item.ServerItem;
接下来,如果您还没有实例化VersionControlServer对象,可以从TeamProject中获取一个,如下所示:
VersionControlServer VCServer = (VersionControlServer)this.TeamProject.Store.TeamProjectCollection.GetService(typeof(VersionControlServer));
使用VersionControlServer QueryHistory(string,boolean)方法获取与该服务器路径关联的其他更改集:
VCServer.QueryHistory(serverPath, false);