团队构建错误:路径...已映射到工作区

Not*_*elf 157 tfs tfs2008 build-server

在Team Foundation Server中创建新版本时,尝试运行新版本时出现以下错误:

路径C:\ Build\ProductReleases\FullBuildv5.4.2x\Sources已映射到工作空间BuildServer_23.

我无法在工作区对话框中看到该名称的工作区.

Not*_*elf 137

使用命令行实用程序TF - Team Foundation版本控制工具(tf).

您可以通过打开Visual Studio命令提示符然后更改到工作区文件夹并发出以下命令来获取所有工作区的列表:

C:\YourWorkspaceFolder>tf workspaces /owner:*
Run Code Online (Sandbox Code Playgroud)

您应该在列表中看到问题工作区以及它的所有者.

您可以使用以下命令删除工作区:

C:\YourWorkspaceFolder>tf workspace /delete /server:BUILDSERVER WORKSPACENAME;OWNERNAME
Run Code Online (Sandbox Code Playgroud)

  • 不用/ server参数,不需要它.否则很好的答案! (18认同)
  • 我收到"无法确定源控制服务器".在构建服务器上运行tf工作区时.任何想法如何解决这一问题? (16认同)
  • Corvin:从属于工作区的文件夹中运行命令 (9认同)
  • 在/ delete之后,我输入了"/ collection:http:<server>:808/tfs/<collection> ..._ then_ workspacename; workspaceowner ...按预期工作.我的问题是由于重新创建了一个构建定义同名. (5认同)
  • 很好的答案,我唯一要补充的是,您可能需要以工作区所有者的身份登录 TFS,否则您可能会收到权限被拒绝的错误。 (2认同)
  • 列出工作区(全部 1562 个)时,“所有者”被列为不错的“最后,第一个”格式,但在删除中使用该格式会引发错误“TF10158:用户或组名最后、第一个包含不受支持的字符”,为空,或太长。` 我不得不使用短登录名。 (2认同)

Rah*_*him 36

只需删除以下文件夹的内容:

C:\ Users\UserName\AppData\Local\Microsoft\Team Foundation\3.0\Cache

UserName是实际用户或当前用户,3.0是版本号.


Yea*_*Stu 29

我收到此错误,这是由于有两个指向同一源的构建定义引起的.问题是我在Build Agent中使用了静态构建目录.

这篇论坛帖子完全描述了我的问题和解决方案:http: //social.msdn.microsoft.com/Forums/en-US/tfsbuild/thread/60a4138a-9b28-4c46-bdf4-f9775ce43c3e/


asu*_*ciu 25

我们遇到了同样的问题,但从TFS服务器删除工作区不起作用.(我应该提一下,我抓住了已经设置了他的凭据的同事VM.)

对我来说,这工作:http: //blogs.msdn.com/b/buckh/archive/2006/09/12/path-is-already-mapped-in-workspace.aspx

我刚进入:...\Local Settings\Application Data \搜索了VersionControl.config,打开了包含该文件的文件夹并删除了所有内容.

在此之前,我尝试手动编辑该文件,但它继续使用相同的错误消息.

我希望这有帮助.

  • 对我们的情况有帮助,我们切换服务器并且旧服务器不再存在,但旧机器仍然有设置. (3认同)

TDN*_*TDN 24

我有一个类似的问题,并删除导致我出现问题的工作区,我登录到安装了TFS客户端的另一台机器并执行以下操作:

  • 在" 文件"菜单上,指向" 源代码管理"," 高级",然后单击" 工作区...".
  • 在" 管理工作区"对话框中,勾选" 显示远程包"复选框.
  • 在" 名称"列下,选择要删除的工作区,然后单击" 删除".
  • 在" 确认"对话框中,单击" 确定".

  • 我的工作站列出了两次.删除了副本,它立即工作.谢谢. (3认同)

dea*_*dog 16

出于某种原因,我无法从命令行实用程序中删除工作区.幸运的是,我发现Team Foundation Sidekicks 2010(来自这篇文章)是免费的,它提供了一个用于查看和删除TFS工作区的GUI,以及更多有用的TFS功能.

  • 我强烈建议任何与TFS一起工作的人来看看TFS Sidekicks,因为它是免费的,并且有许多必备的功能. (2认同)

Mar*_*lin 6

我有一个类似的问题,Visual Studio 2010抱怨已经映射的工作区,但我没有删除整个工作区,而是使用了Visual Studio命令提示符中的以下内容:"tf workspace PROBLEM_WORKSPACE_NAME".这会打开一个"编辑工作区"对话框.从那里我能够从"工作文件夹"列表中删除有问题的路径,该列表消除了错误.

  • 您的解决方案在类似的情况下帮助了我。我为错误的用户创建了一个工作区,因此我删除了它,然后尝试为正确的用户创建它,但“tf”抱怨该路径与另一个工作区(我删除的那个工作区)关联。受您回复的启发,我为错误的用户重新创建了工作区,仅删除了与路径的关联,最后我成功地为正确的用户创建了工作区。 (2认同)

Mik*_*eel 6

这是我所做的(好吧,我所做的):

使用 TFS Sidekicks 清除用户和服务器过滤器,使它们变为空白。这将使您获得所有工作区。

检查工作区名称的构建错误。在 OP 的情况下,它是 BuildServer_23。它在我的环境中有所不同,但基本上只是将错误名称与 tfs sidekick 列表中的错误名称相匹配。

单击红色 x 删除工作区。

中提琴!


小智 5

其余的相当容易。

只需转到此文件夹:C:\Users{UserName}\AppData\Local\Microsoft\Team Foundation\4\Cache 并删除该文件夹中的所有内容。


小智 5

我收到一个异常,告诉我该文件已映射到另一个工作区: “路径 {File Path} 已映射到工作区 {Workspace Name}。”

此工作区已被删除。在我朋友的帮助下,我发现 TFS 将工作区信息保存在用户本地设置目录下。我们找到了一个名为:

{User Documents and Settings dir}\Local Settings\Application Data\Microsoft\Team Foundation\1.0\Cache下的VersionControl.config 该文件包含 TFS 的所有本地映射。可能当你使用 Map 方法而不使用时: public void DeleteMapping(WorkingFolder mapping); 在删除工作区之前,不会从该文件中删除映射信息,TFS 使用该文件来检查您是否已经映射了特定路径。

要解决此问题,请从配置文件中删除所有密钥。不要删除该文件,因为您会再次从服务器缓存中获取它。