C#TFS workspace.get()文件已更新

时间:2015-04-15 15:40:25

标签: c# tfs

所以在这种情况下,我正在尝试使用workspace.get()函数获取所有文件的最新信息。但是,这不会返回已更新的文件列表,它只会获取最新文件,然后会为您提供GetStatus对象。有没有办法知道哪些文件已更新? (只是文件路径很好)

按请求编辑

我会尝试更好地澄清......我真的试图使用workspace.Get()函数(在我已经拥有的工作区对象上)而不是仅仅获取状态我想知道实际已更新的文件名。

2 个答案:

答案 0 :(得分:2)

这里概述了另一种可能更有用的方法:

您可以在代码中订阅VersionControlServer.Getting事件,该事件将告诉您何时获取事件(即,当服务器上的文件与本地工作区不同时,因此需要获取/删除)。

在VersionControlServer上,订阅Getting事件:

vcs.Getting += Getting;

然后你可以制作获取方法:

internal static void Getting(Object sender, GettingEventArgs e)
{
    //'e' has lots of properties and methods to help you figure out what has been done with the files.
}
每次下载项目时都会调用

Getting

e的属性包括:

另见:

答案 1 :(得分:1)

我发现这样做的方法是使用GetItems()对象上的VersionControlServer方法抓取所有项目并手动循环遍历项目,添加新项目并删除任何现在的项目有一个DeletionId