为什么在Visual Studio中加载我的解决方案需要太长时间?

geh*_*hho 41 ankhsvn visual-studio-2010 visual-studio productivity-power-tools visual-studio-2012

我们有一个非常大的解决方案,包含200多个项目和数千个文件.尽管解决方案过去常常在Visual Studio 2010以及2012中加载.但是,在将整个SVN存储库复制到另一个位置后,加载和关闭解决方案突然耗费了很长时间.(我在这里讲30-60分钟!)

geh*_*hho 68

我自己找到了一个解决方案,我想在这里分享一下,希望它可以节省相当多的研究时间并盯着"准备解决方案......"对话框.

使用Process Monitor检查devenv.exe进程时,我发现它非常忙于访问.svn目录.这是我做的(这在某种程度上解决了问题):

  1. 杀死Visual Studio
  2. 打开Visual Studio而不加载解决方案
  3. 禁用AnkhSvn作为源控件插件(工具 - >选项 - >源控制 - >插件选择 - >无)
  4. 在生产力电动工具(工具 - >选项 - >生产力电动工具)中禁用"Document Well 2010 Plus"(VS2010)或"自定义文档"(VS2012) - 我在某处读到了它可能也有帮助...
  5. 关闭Visual Studio
  6. 删除解决方案的*.suo文件.它与解决方案本身位于同一文件夹中.注意:您将丢失几个解决方案的设置,如当前打开的文件,断点,书签,当前解决方案配置和平台(例如Debug x86)等.
  7. 重新启动Visual Studio
  8. 加载解决方案 - 它现在快得多!
  9. 关闭Visual Studio
  10. 打开Visual Studio而不加载解决方案
  11. 重新启用AnkhSvn和"文档井"
  12. 重新启动Visual Studio
  13. 打开解决方案 - 它仍然在几秒钟内加载!

我不知道这些步骤中的哪一个实际上解决了这个问题.可能并非所有这些步骤都是必需的,但我不想重现问题以找出可能省略的步骤.:)

  • 谢谢你分享这个.在我的例子中,删除suo文件改善了解决方案的加载性能. (13认同)
  • 第6步为我修复它 - 删除解决方案的`*.suo`文件. (13认同)
  • 我只是执行第3步来禁用AnkhSvn插件。那对我有用。从一个半小时到一分钟。 (2认同)

xis*_*ket 5

这些都没有帮助我,我做了什么...我用procMon的sysinternals观看,过滤devenv,我看到了很多fussionlog的条目.我在几周之前启用了fussionlog以进行调试,并没有考虑禁用它.我只是禁用了fussionlog,解决方案打开得更快.