重命名文件时 Visual Studio 速度极其缓慢

问题描述 投票:0回答:7

我有一个包含 99 个项目的中型解决方案,最近开始表现得很奇怪:

1)如果我尝试通过解决方案资源管理器重命名文件,VS 看起来会挂起,但经过很长一段时间(10 分钟以上)它将完成重命名操作。

2)我今天还注意到,在调试和发布模式之间切换似乎也会冻结 VS。到目前为止,我还没有让它运行足够长的时间来看看它是否真正完成。

我尝试了 Visual Studio 2012 和 2013,两者都出现了相同的问题,因此这似乎表明问题可能不在于 Visual Studio。我试图检查事件日志中是否有任何内容,但没有任何结果。我也重新启动并运行 checkdisk,但没有发现任何问题。

在具有 8GB RAM 和新 SSD 的相当高规格的笔记本电脑上运行 Windows 7 Professional

更新:显然,如果我重命名了一个文件一次,我可以立即继续重命名它(以及解决方案中的其他文件)。当我重新启动 VS 时,速度又变慢了。

更新2:我让计算机运行过夜,尝试从调试切换到发布,在我下班和回到这里之间的 14 个小时内,它成功做到了这一点。

visual-studio-2012 visual-studio-2013
7个回答
36
投票

如果您将 TFS 与“本地”工作区(而不是“服务器”工作区)一起使用,并且 TFS 存储库中包括不同版本的文件总数超过 10,000 个项目,则 Visual Studio 重命名文件的速度可能会非常慢。

与 Microsoft 的建议相反,我建议使用服务器工作区而不是本地工作区,以获得更好的性能。本地工作区还有一些其他缺点,唯一的优点是能够在 TFS 存储库关闭时工作。考虑到如果您无法连接到 TFS,您可能无法连接到您的 LAN,并且在这种情况下您无能为力,这并不是什么好处。

要在 Visual Studio 2015 中更改为 TFS 的服务器工作区,

  1. 在 VS 中单击文件 --> 源代码管理 --> 高级 --> 工作区

  2. 在打开的对话框中,选择您的工作区并单击编辑...

  3. 单击“高级...”(选择哪个映射并不重要)。

  4. 在位置下,选择服务器,然后按确定。

切换到服务器可能需要十分钟或更长时间,具体取决于存储库的大小。

完成此操作后,重命名文件应该几乎是瞬时的。


2
投票

在测试时,我尝试将其中一个项目设置为在不同的服务器上构建,无论是在调试还是发布模式下。我虽然已经清理了两者,但显然我只是在调试配置下这样做。

显然与此同时,该服务器已经决定它讨厌我的机器,这使得我的机器在等待时冻结。

关闭 Visual Studio 并手动编辑 .csproj 文件解决了问题。


1
投票

不幸的是,99 个项目对于 Visual Studio 来说不是一个中等规模的解决方案,而是一个非常大的解决方案。 Visual Studio 根本无法很好地扩展到这种规模的解决方案,您可以在此处看到其影响。

改善这一情况的唯一方法是将您的解决方案分解为几个较小的解决方案。


0
投票

根据 @Daniel Barbalace 的回答,我的问题确实与 TFS 有关,但我无法切换到服务器工作区。我最终所做的就是删除对我目前未处理的任何分支或项目的映射。没有神奇的数字,但一旦我似乎得到了 50,000 个以下的文件(TFS 文件夹的全局),重命名突然从 2 分钟以上缩短到 3-5 秒。


0
投票

在我的例子中“git”,因为我的漫画项目中有一堆html文件,所以,当我删除.git文件夹时,我再次快速重命名文件。


0
投票

我也有同样的问题。重命名一个文件需要十年的时间。不过我找到了解决方案。当我第一次检查编辑时,重命名又变得非常快。


0
投票

Visual Studio 代码需要更多时间来完成重命名过程。

解决方案1

  1. 重新启动 Visual Studio 代码并尝试重命名即可完成。

解决方案2 2)关闭Visual Studio Code并在资源管理器窗口中手动打开文件/文件夹,然后按F2重命名,或右键单击并选择重命名来重命名文件/文件夹。

注意:在不关闭Visual Studio代码的情况下,您无法直接重命名它,因为该软件会查看您的文件。因此,您必须关闭 Visual Studio Code。

© www.soinside.com 2019 - 2024. All rights reserved.