迁移到新工作空间时,TFVC源代码控制绑定无效

时间:2018-08-07 17:43:36

标签: tfs binding visual-studio-2017 tfvc tfs2018

我要切换到新计算机,并希望保持TF文件不变。因此,我只是将整个文件夹复制到新计算机的文件夹(与前一个文件夹相同-C:\ TF),将其映射到TF服务器的根目录,并尝试从文件资源管理器中打开一个解决方案,希望它可以绑定更多或更多文件。不太自动。

然后,我遇到了与其他地方所描述的其他问题类似的问题,例如herehere。 VS / TF坚持对解决方案和所有项目的绑定是“无效的”。

  • 解除绑定和重新绑定不起作用,绑定重新出现但仍然无效。
  • 重新创建工作空间无效。
  • 解决方案文件的内容没什么好笑的。
  • 相对路径正确-如果我删除绑定并尝试将文件添加到源代码管理中,它将覆盖源代码管理资源管理器中已经存在的文件(该项目以前显示为灰色输出“未下载”变为白色,并带有“添加”待更改)。
  • 尝试将工作空间映射到指向新机器硬盘的“假”网络驱动器(以防TF混淆了相同路径)。
  • 删除Team Foundation的AppData设置无效。

但是,当我在solution文件夹上执行get操作时,绑定突然变得很健康。最后,我执行了获取操作,删除了所有新文件,并将旧计算机中的文件放到了它们的位置。那时VS / TF显然没有绑定问题。但是,这是实现此目标的一种相当不便的方法。

我被迫得出结论,TF 不希望我将自己的本地文件绑定到源代码管理,而无需先在该工作空间中执行get操作,即使文件路径匹配在服务器上。问题:为什么?我在概念上做错了吗?做错了吗?这种行为是该工具的防白痴功能还是仅仅是一种限制?

1 个答案:

答案 0 :(得分:0)

您做错了:/。 | 这是一项功能,而不是错误

工作空间已在VSTS / TFS服务器以及本地工作空间缓存中注册。将文件夹移到新计算机(和相同的文件夹位置)后,您需要告诉VSTS / TFS这些文件现在所在的新计算机名称。

您必须运行tf vc workspaces /updateComputerName:oldComputerName workspacename来更新服务器上的工作区注册。

但是,恐怕您需要先执行此操作,然后再使用新的映射覆盖工作区。

现在,我认为唯一的选择是使用“取消绑定”选项,保存所有内容,然后再次打开源代码控制菜单,然后重新绑定解决方案中的所有项目。或手动编辑解决方案文件(there's a tool for it as well)。