使用TFS API获取最新版本

4
我尝试使用TFS API在工作区内从服务器检索最新代码。我找到了这个问题:如何使用Team Foundation Server SDK获取源代码的最新版本? 这基本上是我想要做的事情; 然而,我想使用现有的工作区,并仅检索一定部分的代码。这可能吗?例如(使用上述问题中给出的示例):
workspace.Get(request, GetOptions.GetAll | GetOptions.Overwrite, "$/MyFolder/MyProject");

不需要设置新的工作区或其他,就可以实现这样的功能吗?

请不要使用GetAll和Overwrite,除非你真的需要它们 - 它们会给服务器和客户端带来相当多的不必要的处理开销,以及网络开销。 - Edward Thomson
我确实需要这样做,因为程序的目的是将指定子目录中的所有最新源代码检索到客户端PC上。虽然这应该是一个不经常发生的过程。 - Paul Michaels
2
我的意思是,服务器足够智能,可以在没有强制或覆盖标志的情况下为您提供最新的源代码,除非您对工作区做了一些可怕的事情。 - Edward Thomson
1个回答

5
您需要使用类似以下方式访问您的工作区:
var vcServer = teamProjectCollection.GetService<VersionControlServer>();
Workspace myWorkspace = vcServer.GetWorkspace("workspaceName", "workspaceOwner");

然后你使用 latest 命令获取最新版本。
 myWorkspace.Get();

或者通过查询这里来精确获取所需内容。

要了解工作区详细信息,请在VS中导航到:

"文件" > "源代码控制" > "工作区..."


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接