我正在使用带有 TFS 作为源代码控制的 Visual Studio 2010 专业版,一切正常。早上我来了,我打开了我的解决方案,它以脱机形式打开。我试过上网,它说
"Workspace for this solution could not be found."
(我不记得确切的错误句子)。
我关闭了我的解决方案。我去了
pending changes window -> workspace ComboBox -> manage workspace
.我编辑了我的工作区并将我的解决方案映射到已经存在的文件夹。现在我能够在窗口中看到我的待定更改。我再次打开了我的解决方案。我尝试 checkout 一个文件,但出现错误:
"file could not be found in workspace, or you don't have permission to access the file."
除了采用最新版本或特定版本之外的任何指针。在管理工作区中,我的工作区是私有(private)的。
最佳答案
TFS 与缓存一起工作。您的客户端计算机上有一个可能会出现各种困惑,因此请删除其中的文件。它的默认路径是C:\Users\<Username>\Local Settings\Application Data\Microsoft\Team Foundation\<Version Number>\Cache
(这可能因您的操作系统而异,但它在您的配置文件中)。
您可以尝试通过转到 File -> Source Control -> Change Source Control... 来重新建立解决方案/项目的绑定(bind)...(如果此菜单项丢失,则可能意味着您需要重置菜单项)。如果源文件已经在工作区中,那么您可以单击结果对话框中工具栏中的绑定(bind)图标,将文件重新链接到源代码管理。但是,您可能仍需要执行获取或重新打开 VS 以使其停止提示。
我知道你提到想知道除了获取最新版本之外你是否可以做任何事情,但是 TFS 2010 将工作区信息存储在服务器上并且需要连接以重新建立元数据。听起来您基本上为您的工作区重新创建了映射。在这样做时,服务器需要重新建立连接。我认为处理此问题的唯一方法是在建立工作空间后执行获取。除非您使用“获取特定版本”对话框,否则您不应丢失任何内容,但为了安全起见,无论如何,在您在该工作区中执行“获取最新”之前,我都会将您的文件复制到一个临时位置。执行获取最新操作后,一切都应该没问题。
显然,您可能还想检查您对工作区映射到的文件夹的权限(搜索了一下后我找不到确切的要求)。正如您似乎知道的那样,这不太可能是问题,但是如果您不确定,那么当然您可以设置保存文件的文件夹,以便您的用户帐户递归地对其具有完整权限,看看是否有区别.
此外,请确保您已安装 Visual Studio 2010 SP1。
behavior is improved in Visual Studio and TFS 2012 with what is called Local Workspaces ;使用本地工作区,有关文件的元数据存储在文件系统而不是服务器中。 TFS 2012 应该很快就会上市。
关于visual-studio-2010 - 在工作区中找不到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11608627/