如何删除TFS工作区映射?
我在一个团队项目的tfs中有一个项目,然后我们将项目移动到另一个团队项目的不同位置。
我已经configurationJenkins连接到团队项目,并构build我的解决scheme,但是当我更改设置连接到新的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.net:8080/tfs/newteamproject ******** The path D:\jenkins\jobs\ProjectName1-Build\workspace is already mapped in workspace Hudson-ProjectName1-Build-MASTER [http://domain.net:8080/tfs/oldteamproject].
所以上面显示有一个现有的工作区,所以我运行下面的命令来删除它
tf workspace -delete Hudson-ProjectName1-Build-MASTER;domain1\username1 -noprompt -server:http://domain.net:8080/tfs/oldteamproject
并提示工作区已被删除,但我仍然得到相同的错误。
我也通过运行下面的命令来检查映射是否已被删除:
tf workspace -server:http://domain.net:8080/tfs/oldteamproject Hudson-ProjectName1-Build-MASTER
但它表示工作空间并不像预期的那样存在。
所以,我认为这可能是caching在某处,并运行下面的命令:
tf workspaces /remove:* /collection:http://domain.net:8080/tfs/oldteamproject
它说:“没有工作区在caching匹配*从服务器http://domain.net:8080/tfs/oldteamproject ”
所以我猜测它甚至没有被caching。
那么是什么原因导致错误以及如何解决?
从VS:
- 打开Team Explorer
- 点击源代码pipe理资源
- 在工具窗口的导航栏中有一个标有“工作区”的下拉菜单。
- 扩展它,并点击“工作区…”选项(是的,有点不直观)
- “pipe理工作区”窗口出现。 点击编辑,您可以添加/删除/编辑您的工作区
从VS在另一台机器上
您不需要VS与登记在同一台机器上,因为您可以编辑远程登记! 在按下“Workspaces …”项目时出现的对话框中,出现一个checkbox,显示“显示远程工作区” – 只需勾选该对话框,即可得到所有征募列表:
从命令行
从开发人员命令提示符处调用“tf workspace”。 它会直接提出“pipe理工作空间”!
我遇到了同样的问题,并能够通过手动删除位于此处的TFScaching中的所有文件来修复它。
%LocalAppData%\Microsoft\Team Foundation\3.0\Cache
或者4.0
等
请按照以下步骤从TFS中删除映射:
- 打开
team explorer
- 点击
Source Control
- 右键点击你的
project
- 点击
Remove Mapping
错误是真的。 您可能已经在不同的机器上创build了具有相同名称的工作区。 现在你可能已经改变了具有不同机器名称的机器。
所以这里是解决方法,肯定会工作。以下是解决方法。
- 转到“Team-Explorer”
- 转到“源代码控制”
- 转到工作区下拉菜单
- 点击“工作区…”
- 将出现一个popup窗口
- 点击“显示远程工作区”
- 现在删除冲突的工作空间,然后继续工作。
请按照以下步骤操作:
Ctrl + Run
复制和过去
%LocalAppData%\Microsoft\Team Foundation
你会得到不同版本的TFS例如
点击每个文件夹,你会得到
现在删除这些文件夹中的所有数据。
重新打开Visual Studio。
谢谢。
我设法使用/ newowner命令移除映射,如下所示:
如何重新获得对Team Foundation Server工作区的访问权限?
该命令打开了一个编辑工作区的窗口,我删除了映射。 之后,我删除了我不需要的工作区。
我正在使用TFS 2012.我尝试了所有build议在线:删除caching文件夹,使用工作区下拉菜单,工作区/删除:*,从控制面板,IE等清除凭据
没有任何工作,我相信我的工作空间不知何故被损坏。 最后,我去了TFS数据库并运行以下查询。 这工作! 当弄乱数据库 ,备份等等时 ,当然要非常小心 。
数据库被称为Tfs _ << your_TFS_collection_name >> 。 忽略Tfs_Configuration MSSQL数据库。 我不确定,但如果您没有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' WHERE WorkspaceId = <<WorkspaceId from above>> /*LocalItem = NULL might work too but I haven't tried it*/
这里的答案都没有删除我的工作区。 但是这里有一个解决scheme可以为你工作。
- 打开一个Visual Studio命令提示符
- 先closuresVisual Studio,或者删除命令不能删除工作区
- 列出工作区命令 – > tf /? 从TFS版本中find可用的命令。
- 列出工作区 – > tf工作区
- 删除工作区 – > tf工作区YourWorkspace /删除
您不必删除整个Cache文件夹。 您将失去所有设置/首选项工作区映射存储在名为“
在用户本地设置/应用程序数据目录下的VersionControl.config 。 位于这里在Windows 7中:
%LocalAppData%\ Microsoft \ Team Foundation \ x.0 \ Cache \ Volatile
其中x = 3.0,4.0,5.0,6.0等
在这里面,你会发现guid命名的文件夹,打开每个文件夹,手动编辑前面提到的文件,从本地文件夹删除工作区映射(目录path将出现在mappedpaths属性中)到TFS服务器(不再使用)。
最后删除所有的工作空间,并从头开始。 固定。
我被提示通过Visual Studiologin到我们的TFS服务器,所以我使用了我的SU帐户,这通常是服务器访问所需的。 这导致了一些问题,我最终映射到一个不同的文件夹,没有意识到我刚刚重复了所有的东西。 在某些时候,Visual Studio恢复到了我的常规用户,我“失去了”挂起的更改,并注意到新的挂起的更改被放置在我的旧映射中。
当我尝试重新映射到新的位置(即SU帐户被链接到)以试图恢复我的挂起的更改时,它会告诉我它已经映射到SU,并且我不能那样做,但是没有办法去除地图! 显示远程工作区,通过命令行删除所有工作区等没有任何显示。 然后,我想“如果它实际上链接到我的计算机上的SU用户帐户,而不是域。 我在本地以我的SU身份login,果然,该用户有一个工作区。 我删除了映射,并能够回到我的常规用户,并重新映射没有问题。
这个故事的寓意,可能是另一个用户login在同一台机器上,这是从当前login的用户不可见,因此你不能删除,甚至看不到映射。
您也可以通过简单地编辑.sln文件并删除tfs绑定的GlobalSection元素来删除tfs映射。
谢谢你的帮助!
查找问题工作区 SELECT * FROM tbl_Workspace WHERE WorkspaceName like'%xxxxx%'
查找所需的工作空间 SELECT * FROM tbl_Workspace WHERE WorkspaceName like'%zzzzz%'
select编辑顶部200 tbl_WorkingFolder然后find问题映射 SELECT * FROM tbl_WorkingFolder WHERE WorkspaceId = 从上面的问题WorkspaceId
将WorkspaceId更改为所需的WorkspaceId
最后转到Project Explorer并在项目上selectRemove Mapping
修改VB6 MSSCCPRJ.SCC以匹配所需的工作台
首先下载并安装团队资源pipe理器插件到您的系统,然后去源代码pipe理资源pipe理器。 在导航窗格中find“工作空间”字段,然后单击“工作空间”选项。 单击工作区选项后,您将看到所有映射的工作区。 点击删除button,删除所需工作区的映射。