升级后我无法将 dev 文件夹重新映射到 TFS 2015。这是我所做的:
- 从 TFS 2010 迁移到 TFS 2015:
- 备份 TFS 数据库并将其恢复到新服务器 (SQL 2014)
- 安装 TFS 2015
- 运行升级向导
新服务器已取代旧服务器并具有相同的 IP 地址。我的开发机器是 Windows 10 Enterprise,我的用户位于 admin 组中。 UAC 已关闭。
- 我在VS2013中连接到TFS;然后我去
Team Explorer > Configure Workspace
,然后输入包含我的解决方案的文件夹。 - 我点击
Map & Get
,它告诉我:
The working folder XXXX is already in use by the workspace YYYY;MyUser on computer MyComputer
- 我点击
Advanced
,它可以让我删除工作区。
但是,当我尝试重新映射同一文件夹时,我收到相同的消息。
我还使用命令行删除了工作区 ( tf workspace /delete
);删除似乎有效,因为当我尝试再次删除它时,它告诉我工作区不存在。
但是,无论我如何尝试重新映射同一文件夹,工作区都会回来。
我还删除了
C:\Users\Myuser\AppData\Local\Microsoft\Team Foundation\5.0\Cache
中的缓存我查询过
tbl_Workspace
和tbl_WorkspaceMapping
在实际的 TFS 数据库中,果然工作区确实存在。
怎样才能彻底摆脱它?
最佳答案
好吧,原来关键在于,虽然新服务器的IP与旧服务器相同,但名称不同。
连接到新 TFS 后,在 Visual Studio Team Explorer 中,我似乎只能访问在新 TFS 上创建的工作区。
使用 tf
命令行实用程序,我可以获取其他内容。例如:
tf workspaces /owner:OldServerName\Myuser /server:http://ServerIP:8080/tfs/CollectionName
...将列出我在旧服务器上使用的所有工作区。
泄露它的线索是,最初我指定了 /owner:MyUser
,它告诉我用户规范不明确(我在新服务器上使用与旧服务器相同的用户名)一)。一旦我用旧服务器名称限定它,一切就正常了。
然后:
tf workspace /delete /collection:http://ServerIP:8080/tfs/CollectionName /login:OldServerName\MyUser workspacename
...导致出现密码提示。我输入了密码,工作区被删除。
再次列出它们并没有显示已删除的工作区,并且对基础 TFS 数据库中的 tbl_Workspace
的查询确认该工作区确实已消失。
一旦我以这种方式清除了旧服务器中的工作区,我就可以在 VS Team Explorer 中创建一个新工作区并映射我的项目。
关于visual-studio-2013 - TFS 2015 工作区删除后不断返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33317672/