Tag: tfs

C#代码检查TFS上是否存在工作空间

我正在尝试创建一个自动化工具来从TFS获取最新代码。 我需要检查系统上是否存在任何具有相同名称的工作区。 如果存在则获取工作空间实例。 否则创建工作区和映射。 我发现Microsoft.TeamFoundation.VersionControl.ClientVersionControlServer有方法Workspace GetWorkspace(string workspaceName, string workspaceOwner); 获得现有的工作空间。 但是,如果系统上不存在工作空间,则会抛出exception。 所以请给我一个检查工作空间和映射是否存在的代码。 目前我有以下代码,我知道它的方法不正确 try { //**Expected** an exception as sometimes the workspace may not exist or Deleted manually. workspace = versionControl.GetWorkspace(workspaceName, versionControl.AuthorizedUser); versionControl.DeleteWorkspace(workspaceName, versionControl.AuthorizedUser); workspace = null; } catch (Exception e) { DialogResult res = MessageBox.Show(“There are no workspace mapped. I am creating a new […]

如何在Team Foundation Server 2015中启用C#7版本?

我们在本地安装了Team Foundation Server(TFS)2015。 我们希望使用Visual Studio 2017来利用最新的C#语言function。 我们尚未准备好升级到2017年TFS。在TFS 2015中构建最新C#语言function所需的步骤是什么?

如何撤消未更改的文件的挂起更改?

让我对TFS感到疯狂的一件事是,如果您检出了一个文件,但没有对其进行任何更改,它仍会显示为更改,从而分散您对实际更改的注意力。 当您使用T4等工具生成代码时,这尤其令人讨厌,因为大多数情况下该工具将生成相同的代码,但会将文件签出。 由于某些我无法理解的原因,Visual Studio坚持将这些视为变更,如果另一个人碰巧签入相同的“更改”,甚至会声称存在冲突。 幸运的是,TFS Power Tools包含一个命令,用于将签出的文件与服务器版本进行比较,并撤消未更改的文件。 我将解释如何使用自定义工具将其集成到Visual Studio中。 遗憾的是,如果您使用的是Visual Studio 2017,则无法使用此function! 以前使用早期版本的Visual Studio完成此操作非常简单 : tfpt uu /noget /r * 如果没有任何更改,我们如何从挂起的更改中删除文件?

在TFS API中将测试用例添加到ITestSuiteBase

我正在使用TFS API并遇到了ITestSuiteBase和IRequirementTestSuite的问题。 我已经马上在IStaticTestSuite中轻松创建一个新的测试用例: IStaticTestSuite workingSuite = this.WorkingSuite as IStaticTestSuite; testCase = CreateTestCase(this.TestProject, tci.Title, tci.Description); workingSuite.Entries.Add(testCase); this.Plan.Save(); 但是,此解决方案不适用于需求测试套件或ITestSuiteBase。 我认为可行的方法是: ITestcase testCase = null; testCase = CreateTestCase(this.TestProject, tci.Title, tci.Description); this.WorkingSuite.AllTestCases.Add(testCase); this.WorkingSuite.TestCases.Add(testCase); this.Plan.Save(); 但是这种方法实际上并没有将测试用例添加到套件中。 但是,它确实将测试用例添加到计划中。 我可以查询创建的测试用例,但它不会按预期显示在套件中 – 即使在代码中也会立即显示。 刷新工作套房没有任何好处。 其他代码包括: public static ITestCase CreateTestCase(ITestManagementTeamProject project, string title, string desc = “”, TeamFoundationIdentity owner = null) { // Create […]

TFS 2010 API:队列同步构建并获取每个排队构建的状态:“在代理上运行(等待构建代理)”

是否可以同步排队构建? 我试过这样的事情: CodeActivity: [BuildActivity(HostEnvironmentOption.Agent)] public sealed class QueueNewBuild : CodeActivity { // The Team Project that the build definition belongs to. [RequiredArgument] public InArgument BuildDetail { get; set; } // The build definition to queue [RequiredArgument] public InArgument BuildDefinition { get; set; } protected override BuildResult Execute(CodeActivityContext context) { // Obtain the runtime value of […]

以编程方式获取TFS责备(注释)数据

我正在尝试为Team Foundation Server 2010实现一个插件,该插件将创建有关团队项目中用户的报告。 从概念上讲,为了正确实现此插件,我所需要的只是访问在Visual Studio中使用“注释”function时获得的相同数据: 我需要能够告诉谁是最后一个创作给定行的人代码 我在互联网上浏览了文档或代码示例,但我能找到的所有建议都是建议,例如使用TFS命令行工具或看似不完整的代码示例 。 我不介意在客户端代码中做很多繁重的工作,但似乎没有一种明显的方法可以获得有关Changeset中代码内容的有用作者数据,也不会从合并详细信息返回中获取。

如何获取特定团队项目的签入/更改历史记录?

我正在使用TFS客户端API来尝试查询TFS 2010实例。 我需要能够做到以下几点 对于指定的团队项目,请说“项目A” 获取最近签到此项目的历史记录列表(比如最近50个,或者最后一天的列表) 然后能够遍历此列表并获取项目的元数据(理想的文件和文件夹名称) 我想我需要在VersionControlServer类上使用QueryXXX方法,但是找不到有关如何使用它的任何有用或清晰的示例。 我已经看到有GetLastestChangesetId方法,但这看起来不像它可以作用于特定项目或目录。

TfsConfigurationServer.GetService ()始终返回null

我正在尝试使用TFS SDK连接到TFS 2010,但无法获得VersionControlServer服务。 var servers = RegisteredTfsConnections.GetConfigurationServers(); // ok 然后 var tfs = new TfsConfigurationServer(servers.First().Uri, CredentialCache.DefaultNetworkCredentials); // or var tfs = new TfsConfigurationServer(servers.First()); 两者总是返回null: var vc = (VersionControlServer)tfs.GetService(); // null! 我该怎么办?

“Product:*”部分中未解决的符号’Property:NETFRAMEWORK45’的引用

在TFS 2010中构建应用程序时出现错误。在“Product:*”部分中未解析对符号“Property:NETFRAMEWORK45”的引用。 这适用于Wix 3.9 Wix包引用了NetFxExtension。 我可以在我的本地机器上构建wix,但是当我通过TFS构建它时,我得到了错误。 任何人都可以帮我解决这个问题吗? 我有以下代码导致错误。

ItemGroup项目范围,或者“为什么MSBuild讨厌我?”

我有一个解决方案,我试图在TFS上构建。 我想更新所有适当文件的版本,我一直试图完成这项工作。 关于如何做到这一点有很多链接,但由于一个小问题,它们都不适合我…范围。 我的树看起来像这样: test.proj application.sln 应用(文件夹) main.cs 属性(文件夹) AssemblyInfo.cs中 当我从解决方案文件夹运行“c:\ Windows \ Microsoft.NET \ Framework \ v3.5 \ MSBuild.exe test.proj”时…我得到以下输出: Microsoft (R) Build Engine Version 3.5.30729.1 [Microsoft .NET Framework, Version 2.0.50727.3074] Copyright (C) Microsoft Corporation 2007. All rights reserved. Build started 7/6/2009 3:54:10 PM. Project “D:\src\test.proj” on node 0 (default targets). CSFiles: ‘application\Properties\AssemblyInfo.cs’ DesktopBuild: […]