首页 文章

如何删除TFS工作区映射?

提问于
浏览
123

我在团队项目中的tfs中有一个项目,然后我们将项目移动到另一个团队项目中的不同位置 .

我已经将Jenkins配置为连接到团队项目并构建我的解决方案但是当我更改设置以连接到新的tfs团队项目时,它给出了以下错误:

[workspace] $ "C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\tf.exe" workspace -new Hudson-ProjectName1-Build-MASTER;domain1\username1 -noprompt -server:http://domain-eg.net:8080/tfs/newteamproject ********
The path D:\jenkins\jobs\ProjectName1-Build\workspace is already mapped in workspace Hudson-ProjectName1-Build-MASTER [http://domain-eg.net:8080/tfs/oldteamproject].

所以上面显示有一个现有的工作区,所以我运行下面的命令来删除它

tf workspace -delete Hudson-ProjectName1-Build-MASTER;domain1\username1 -noprompt -server:http://domain-eg.net:8080/tfs/oldteamproject

并且它提示工作区已被删除但我仍然得到相同的错误 .

我还通过运行以下命令检查映射是否已被删除:

tf workspace -server:http://domain-eg.net:8080/tfs/oldteamproject Hudson-ProjectName1-Build-MASTER

但它表示工作区不按预期存在 .

所以,我认为它可能在某处缓存并运行以下命令:

tf workspaces /remove:* /collection:http://domain-eg.net:8080/tfs/oldteamproject

它说“缓存中没有工作区与服务器http://domain-eg.net:8080/tfs/oldteamproject匹配*”

所以我猜它甚至都没有缓存 .

是什么导致错误以及如何解决?

18 回答

  • 3

    From VS:

    • 打开团队资源管理器

    • 单击“源代码管理资源管理器”

    • 在工具窗口的导航栏中有一个标记为"Workspaces"的下拉列表 .

    • 扩展它并单击"Workspaces..."选项(是的,有点不直观)

    • "Manage Workspaces"窗口出现 . 单击编辑,您可以添加/删除/编辑工作区

    source control explorer

    From VS on a different machine

    您不需要VS与登记在同一台机器上,因为您可以编辑远程登记!在按下“工作区...”项目时出现的对话框中有一个复选框,显示“显示远程工作区” - 只需勾选,您将获得所有登记的列表:

    show remote workspaces

    From the command line

    从开发人员命令提示符调用“tf workspace” . 它将直接打开“管理工作区”!

  • 1

    我遇到了同样的问题,并且能够通过手动删除位于此处的TFS缓存中的所有文件来修复它:

    %LocalAppData%\Microsoft\Team Foundation\3.0\Cache
    

    4.05.0

  • 0

    请按照以下步骤从TFS中删除映射:

    • 打开 team explorer

    • 点击 Source Control

    • 右键单击你 project

    • 点击 Remove Mapping

  • 5

    错误是真的 . 您可能在不同的计算机上创建了具有相同名称的工作区现在您可能已经更换了具有不同机器名称的机器 .

    所以这里的解决方案肯定会有效 . 以下是解决方法 .

    • 转到"Team-Explorer"

    • 转到"Source-Control"

    • 转到“工作区”下拉列表

    • 点击"Workspaces..."

    • 将出现一个弹出窗口

    • 点击"Show remote workspaces"

    • 现在删除存在冲突的工作区,您可以继续工作 .

  • 1

    请按照以下步骤操作:

    Ctrl + Run
    

    复制和过去

    %LocalAppData%\Microsoft\Team Foundation
    

    您将获得不同版本的TFS,例如
    enter image description here

    点击每个文件夹即可获得

    enter image description here

    现在删除这些文件夹中的所有数据 .

    重新打开Visual studio .

    谢谢 .

  • 19

    我设法使用/ newowner命令删除映射,如下所示:

    How can I regain access to my Team Foundation Server Workspace?

    该命令打开了一个Edit Workspace窗口,我删除了该映射 . 之后我删除了我不需要的工作空间 .

  • 181

    Update 2019-01-23

    如果您在 tf workspace 命令中使用正确的用户名( wkspcOwnerDomain\wkspcOwnerUsername )后反复收到以下错误 The workspace wkspaceEg does not exist… ,例如,

    tf workspace "wkspaceEg;wkspcOwnerDomain\wkspcOwnerUsername" /collection:http://tfs.example.com:8080/tfs/collectionEg /login:TFSUsername,TFSPassword

    然后 tf workfold 命令可能有助于解决它 . 见this question .

    如果即使这样也不起作用且您不能/不愿意使用TFS Sidekicks,请继续执行下面有风险的最后沟渠选项 .


    我正在使用TFS 2012.我尝试了在线建议的所有内容:删除缓存文件夹,使用工作区下拉列表,tf工作区/删除:*,从控制面板清除凭据,IE等 .

    没有什么工作,我相信我的工作区以某种方式被破坏了 . 最后,我去了TFS数据库并运行了以下查询 . 那很有效!当然 be very careful when messing with the database ,备份等

    该数据库名为 Tfs_<<your_TFS_collection_name>> . 忽略 Tfs_Configuration MSSQL数据库 . 我'm not sure but if you don' t有一个 Tfs_<<your_TFS_collection_name>> 数据库,设置可能在 Tfs_DefaultCollection 数据库中 . 映射存储在 tbl_WorkingFolder.LocalItem 中 .

    /*Find correct workspace*/
    SELECT WorkspaceId, *
    FROM tbl_Workspace
    ORDER BY WorkspaceName
    
    /*View the existing mapping*/
    SELECT LocalItem, *
    FROM tbl_WorkingFolder
    WHERE WorkspaceId = <<WorkspaceId from above>>
    
    /*Update mapping*/
    UPDATE tbl_WorkingFolder
    SET LocalItem = 'D:\Legacy.00\TFS\Source\Workspaces\teamProjEg' WHERE
    /*LocalItem = NULL might work too but I haven't tried it*/
    WorkspaceId = <<WorkspaceId from above>>
    
  • 0

    这里的答案都没有删除我的工作区 . 但这里有一个可能适合您的解决方案 .

    • 打开Visual Studio命令提示符

    • 首先关闭Visual Studio或删除命令可能不会删除工作区

    • 列出工作区命令 - > tf /?从TFS版本中找到可用的命令 .

    • 列出工作空间 - > tf工作空间

    • 删除工作区 - > tf工作区YourWorkspace /删除

  • 0

    You don't have to delete the entire Cache folder. you lose all settings / preferences 工作空间映射存储在名为的文件中:

    VersionControl.config 在用户本地设置/应用程序数据目录下 . 位于Windows 7中:

    %LocalAppData%\ Microsoft \ Team Foundation \ x.0 \ Cache \ Volatile其中x = 3.0,4.0,5.0,6.0等 .

    Inside this you will find guid named folders , open each of them, manually editing the forementioned file, to remove the workspace mapping(directory path will be present in mappedpaths attribute) from that local folder to the TFS server (which is no longer in usage).

  • 115

    最后删除了所有工作区并从头开始 . 固定 .

  • 11

    我被提示通过Visual Studio登录我们的TFS服务器,因此我使用了我的SU帐户,这通常是服务器访问所必需的 . 这导致了一些问题,我最终映射到一个不同的文件夹,没有意识到我刚刚复制了我的所有东西 . 在某些时候,Visual Studio恢复了我的常规用户,我“丢失”了挂起的更改,并注意到我的旧映射中放置了新的挂起更改 .

    当我试图重新映射到新位置(SU帐户被链接到)以试图恢复我的挂起更改时,它会告诉我它已经映射到SU,并且我无法实际链接到SU用户帐户在我的计算机上,而不是域 . “我在本地登录了我的SU,果然,有一个工作区为该用户设置了所有设置 . 我删除了映射,并且能够返回到我的普通用户并重新映射没有问题 .

    故事的道德,也许另一个用户登录在同一台机器上,从当前登录的用户看不到,因此您无法删除甚至看到映射 .

  • 1

    您还可以通过简单地编辑.sln文件并删除tfs绑定的GlobalSection元素来删除tfs映射 .

  • 3

    谢谢你的帮助!

    Find problem workspace SELECT * FROM tbl_Workspace WHERE WorkspaceName如'%xxxxx%'

    Find desired workspace SELECT * FROM tbl_Workspace WHERE WorkspaceName如'%zzzzz%'

    Select Edit Top 200 tbl_WorkingFolder then Find the problem mapping SELECT * FROM tbl_WorkingFolder WHERE WorkspaceId =上面的问题WorkspaceId

    Change the WorkspaceId to the desired WorkspaceId

    Finally goto Project Explorer and select Remove Mapping on the project

    Modify VB6 MSSCCPRJ.SCC to match the desired WorkSpace

  • 2

    首先在系统中下载并安装Team Explorer插件,然后转到Source Control Explorer . 在导航窗格中,找到Workspace字段,然后单击Workspaces选项 . 单击“工作空间”选项后,您将看到映射的所有工作空间 . 单击“删除”按钮,然后删除所需工作空间的映射 .

  • 0

    运行 tf workspaces 以查看当前工作空间映射 . 输出如下:

    enter image description here

    然后运行 tf workspace /delete "{workspace};{user}

    Using output above, to delete workspace bi:

    tf workspace /delete bi;James Wierzba

  • 0

    如果提到的线索没有帮助您,那么下载Team Foundation Sidekick并使用它来删除工作区 .

  • 0

    文件 - >源代码管理 - >高级 - >工作区 - >在管理工作区中选择工作区,然后单击“编辑”然后您可以更改本地文件夹 .

  • 0

    以下是从TFS中删除项目映射的步骤:

    (1)单击“查看”按钮 .

    (2)打开团队资源管理器

    (3)单击“源代码管理”

    (4)右键单击您的项目/目录

    (5)单击“删除映射”

    (6)最后删除Project表单本地目录 .

相关问题