24

我正在使用带有 TFS 作为源代码控制的 Visual Studio 2010 专业版,一切正常。早上我来了,我打开了我的解决方案,它以脱机形式打开。我试过上网,它说

"Workspace for this solution could not be found."

(我不记得确切的错误句子)。

我关闭了我的解决方案。我去了pending changes window -> workspace ComboBox -> manage workspace。我编辑了我的工作区并将我的解决方案映射到已经存在的文件夹。

现在我能够在窗口中看到我的待定更改。我再次打开了我的解决方案。我尝试签出一个文件,但出现错误:

“在工作区中找不到文件,或者您没有访问该文件的权限。”

除了采用最新版本或特定版本之外的任何指针。在管理工作区中,我的工作区是私有的。

4

6 回答 6

34

很抱歉打扰大家。最后我拿了最新版本来解决这个问题。

于 2012-11-05T07:20:36.783 回答
17

TFS 与缓存一起工作。您的客户端计算机上有一个可能会出现各种混乱,因此请删除其中的文件。它的默认路径是C:\Users\<Username>\Local Settings\Application Data\Microsoft\Team Foundation\<Version Number>\Cache(这可能因您的操作系统而异,但它在您的配置文件中)。

您可以尝试通过转到 File -> Source Control -> Change Source Control... 来重新建立解决方案/项目的绑定...(如果此菜单项丢失,则可能意味着您需要重置菜单项)。如果源文件已经在工作区中,那么您可以单击结果对话框中工具栏中的绑定图标,将文件重新链接到源代码管理。但是,您可能仍需要执行获取或重新打开 VS 以使其停止抱怨。

我知道您提到想知道除了获取最新版本之外您是否可以做任何事情,但是 TFS 2010 将工作区信息存储在服务器上并且需要连接以重新建立元数据。听起来您基本上为您的工作区重新创建了映射。在这样做时,服务器需要重新建立连接。我认为处理此问题的唯一方法是在建立工作空间后执行获取。除非您使用“获取特定版本”对话框,否则您不应丢失任何内容,但为了安全起见,无论如何,在您在该工作区中执行“获取最新”之前,我都会将您的文件复制到一个临时位置。执行获取最新操作后,一切都应该没问题。

显然,您可能还想检查您对工作区映射到的文件夹的权限(搜索了一下后我找不到确切的要求)。正如您似乎知道的那样,这不太可能是问题,但是如果您不确定,那么您当然可以设置保存文件的文件夹,以便您的用户帐户递归地对其具有完整权限,看看是否有区别.

此外,请确保您已安装 Visual Studio 2010 SP1。

行为在 Visual Studio 和 TFS 2012 中通过所谓的Local Workspaces得到改进;使用本地工作区,有关文件的元数据存储在文件系统而不是服务器中。TFS 2012 应该很快就会上市。

于 2012-07-26T18:36:24.193 回答
1

对提示说好。当解决方案打开时(它不会引用文件),在解决方案资源管理器中右键单击解决方案并选择“重新加载项目”</p>

于 2015-01-14T17:37:18.277 回答
0

我遇到了这个错误,我检查了工作区目录的关联句柄(资源监视器中的 CPU 选项卡)。devenv 进程在里面保存一个目录。所以我重新启动了 Visual Studio,我没有收到这个错误。

于 2015-05-28T14:40:48.843 回答
0

我在 VS2015 上遇到了类似的问题,我发现我的机器上安装了 nuget 旧版本(VSIX(v3.3.0))。我从nuget site下载了最新版本。它解决了我的问题

于 2017-02-26T08:11:36.367 回答
-1

只需从项目中排除导致问题的文件并重新包含它

于 2020-10-28T07:41:42.663 回答