使用c#获取Changeset及其在TFS上的所有更改
我试图通过它的变化获得特定的变更集。 这是工作。 问题是我无法获取受该变更集影响的文件。
Changeset changeset = GetChangeset(new Uri("tfs path"), 10918); foreach (var w in changeset.Changes) { Console.WriteLine("Type:" + w.ChangeType); Console.WriteLine("Comment:" + changeset.Comment); Console.WriteLine("Date:" + changeset.CreationDate); foreach (var y in changeset.WorkItems) { Console.WriteLine("Name:" + y.Title + y.Type); } } private static Changeset GetChangeset(Uri serveruri, int changesetid) { var tfs = new TfsTeamProjectCollection(serveruri); var svc = tfs.GetService(); var changeset = svc.GetChangeset(changesetid); return changeset; }
上面的代码正在运行。 我可以将变更集作为对象获取并显示ChangeType
, CreationDate
和Comment
但我无法获得与更改相关联的项目。 例如,我编辑了Program.cs
。 所以它应该在变更集下可见。
任何建议都会很高兴。
谢谢!
您已经在迭代代码中的更改。 受影响的文件位于“ Change
类型的“ Item
属性中。
在你的情况下: w.Item.ServerItem
– >这是文件的Serverpath,如'$/A/B/C.txt'
您可以使用w.Item.DownloadFile(@"C:\local.txt")
下载它