我正在使用Visual Studio 2010.几个月前我使用了一些' ABC' TFS用户连接到TFS并映射到本地驱动器上的某些文件夹。现在我以前的用户' ABC'已经不见了,我被分配了一个新的tfs用户' XYZ'连接到TFS。所以很自然地我尝试将一些远程文件夹映射到我现有的本地文件夹,我收到了以下错误。
"工作文件夹' Some_Local_Path'已被工作空间WORKSPACE_NAME:USER_NAME用于计算机' MACHINE_NAME'"
我已尝试删除缓存文件夹内容但错误相同(C:\ Users {UserName} \ AppData \ Local \ Microsoft \ Team Foundation \ 3.0 \ Cache)。 我也尝试运行常见的TFS命令(tf workspaces / remove:*)来删除所有工作区的缓存,但仍然是同样的错误。 当我尝试编辑我的工作区时,它会显示当前用户的源控件和本地文件夹&#;; XYZ'但我想要的是删除我以前的用户' ABC'的文件夹绑定。我怎样才能做到这一点?
答案 0 :(得分:36)
如果您无权访问该帐户,则需要让您的TFS管理员删除该工作区。
您可以通过调用" tf工作区"来完成此操作。使用指定的显式用户,但您需要"管理其他用户工作区"允许。 TF Sidekicks使用相同的命令,因此需要相同的权限。它是TFS管理生产力工具。
https://msdn.microsoft.com/en-us/library/y901w7se(v=vs.100).aspx
您可以使用:
tf workspace /delete "WORKSPACENAME;PREVIOUSUSERACCOUNT"
答案 1 :(得分:30)
如果您拥有该集合的管理权限,则可以使用位于 Visual Studio \ Common7 \ IDE 目录中的TF命令来执行此操作,而无需安装其他工具。
首先列出与用户关联的工作区:
TF workspaces /collection:"http://tfsserver:8080/tfs/collection_name" /owner:owner_id
这将返回用户所拥有的工作区列表以及与之关联的计算机
删除指定的工作区:
TF workspace /delete workspacename;owner_id /collection:"http://tfsserver:8080/tfs/collection_name"
答案 2 :(得分:17)
我有一个类似的问题,无法安装sidekick,因为我正在运行VS 2k17。
我无法删除工作区,因为它一直告诉我它无法找到工作区。
tf workspaces /computer:* /owner:*
这会列出我的所有工作区和所有者。所以我会尝试
tf workspace /delete myWorkSpaceName;Bob Smith
TF14061: The workspace myWorkSpaceName;Bob Smith does not exist.
这是我在上面原始工作区列表中获得的确切工作空间和所有者名称。
解决方案是要求xml格式
tf workspaces /computer:* /owner:* /format:xml > c:\temp\workspaces.xml
(注意:输出到文件是可选的,但建议使用)
这为工作区所有者提供别名,其中一个是带有guid和帐户电子邮件的长名称。这最终奏效了:
tf workspace /delete myWorkSpaceName;aabe3ec12-1254-4956-b1ee-3fb26506931e\bsmith@myDomain.onmicrosoft.com
它要求确认并最终删除了我的孤立工作区。
答案 3 :(得分:15)
首先,您需要安装TFS Sidekick
(可以从http://www.attrice.info/cm/tfs/下载)在安装阶段选择集成IDE模式
然后会在Visual Studio
添加一个新菜单,如下所示
菜单 - >工具 - > TeamFoundation Sidekick
然后打开工作区sidekick 搜索' ABC'用户,然后您可以删除他的工作区
答案 4 :(得分:3)
Source Control Explorer
(View->Other Windows->Source Control Explorer
)Workspace
组合。从该组合中选择Workspacess..
Edit
Remove
答案 5 :(得分:1)
从TFS服务器删除工作区的步骤:
打开Visual Studio Developer命令提示符。
转到程序文件(x86)文件夹,根据安装的visual studio选择“Microsoft Visual Studio 12.0”文件夹。这是我选择它,因为我在我的机器上安装了Visual Studio 2013。在命令提示符中添加此路径。添加像 “cd C:\ Program Files(x86)\ Microsoft Visual Studio 12.0 \ Common7 \ IDE”
注意:如果您可以从网络访问TFS服务器,那么您可以从安装了Visual Studio的任何计算机上尝试它,或者如果它有Visual Studio,则可以从同一台TFS计算机服务器上尝试。强>
检查特定集合下的工作区列表。键入以下命令以获取一个集合下的工作区。
cd C:\ Program Files(x86)\ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ tf workspaces / server:http:// {TFSServername}:8080 / tfs / {CollectionName} / owner:*
如何删除特定集合下的工作空间。检查以下命令是否相同。
用TFS集合名称替换{CollectionName}。
E.g。 tf workspace / server:http:// {TFSServername}:8080 / tfs // {CollectionName} / delete {Enter Exact Workspacename}; {Enter ExtactOwnerName}
答案 6 :(得分:1)
我遇到了一个相同的问题,即使用tf delete命令删除工作空间后,我得到了已经映射了工作空间的错误!然后我发现tf deleteworkspace命令使作业不完整,您还必须按照以下建议从缓存中手动将其删除:
答案 7 :(得分:0)
设置詹金斯的人离开我们公司后,我遇到了同样的问题。他有设置工作区,并且TFS结帐正在使用备用身份验证。由于他的凭据已从msdn中删除,TFS结帐开始令人窒息。
遵循LarryG的解决方案有助于删除工作区。唯一的不同是,我只是使用离开公司的人员的Windows Live ID。
tf工作区/ delete myWorkSpaceName; windowsliveID
答案 8 :(得分:0)
1。首先,我们将在VS 2015 Developer命令提示符下检查工作区列表,
例如-tf工作区/所有者:*
2。现在,我们将从VS 2017 Developer命令提示符处获取xml格式,该格式将具有特定工作空间的“所有者ID”,
示例1-tf.exe工作区/ owner:* / computer:ComputerName / collection:https://YOUR-TFS-URL.visualstudio.com / format:xml
3。现在,我们可以删除特定用户的工作区,
示例1- Tf工作区/ delete ComputerName; email@email.com / server:“ https://URL.visualstudio.com”
OR
示例2-Tf工作区/删除ComputerName; 1e178c77-bb8b-6f05-bf99 /服务器:https://URL.visualstudio.com
(其中1e178c77-bb8b-6f05-bf99是您从步骤2 XML格式获得的工作区的ID)
4。同样,我们将从VS 2015 Developer命令提示符下检查工作区列表,
例如-tf工作区/所有者:*