• Visual Studio中的.suo(Solution User Options)文件


            其实关于.suo文件,官方文档和网上很多资料就说明的十分详细了,本文主要按照我自己的理解将其整理归纳成一篇笔记以备日后查看。.suo文件全称为:Solution User Options,看了很多资料都翻译成解决方案用户选项。

    建议英文好的朋友可以看这篇文章:Solution User Options (.Suo) File,我在MSDN上面也找到了一篇机翻的中文文档:解决方案用户选项 (。Suo) 文件,机翻虽然有点粗糙,但是还能将就的看下。

    .suo文件是什么有啥用?

           先讲下.suo文件是干嘛的,官方文档里只是很简单的一句话就概括了:

    官方说明

           这里直接套用机翻文档的解释:解决方案用户选项 (.suo) 文件包含每个用户的解决方案的选项(感觉说了等于没说,太笼统了)。我这边自己进行了归纳,总而言之.suo主要是Visual Studio用来保存/记录以下这些信息或者说状态的文件:

    1. 用户在代码中插入的调试断点和跟踪点位置,包括它们的禁用/启用状态
    2. 添加的书签
    3. 设置的初始/默认启动项目
    4. 打开的选项卡列表,那些未关闭的文档和选项卡位置及排列顺序都会被记录下来。
    5. 项目卸载状态

    用户选项截图

           所谓的解决方案用户选项就是包含了上面的这些东西!这里也只是列举出了一部分,只要是当前用户在解决方案中的自定义设置和工作状态/配置,都会保存在.suo文件中。此外还需要注意不同版本的VS会有不同的情况,也就是说具体情况具体分析!

            PS:注意.suo是以二进制格式存储的文件,所以无法用常规手段直接查看,不要妄想用txt文本直接打开。

           看完上面对.suo文件的说明,大概就能明白这个文件的主要作用了。由于记录了用户当前的开发环境,因此每当重新打开Visual Studio的解决方案时,都能继续上一次的工作环境,以便用户快速的进入工作状态。

           举个简单的例子,你打开VS,写着代码还唱着歌,突然就下班了(程序猿一般不加班的)。明早上班重新打开VS,由于保存了上一次的工作环境,比如最后打开的窗口,最后写的代码位置,最后加的断点书签等,你马上就进入了工作状态,岂不美哉。如果没有保存这些用户选项,可能要花费点时间回想昨天的工作进度。

    关于.suo文件的一些注意事项

           首先要明确一点,如果开发团队有使用源代码版本控制系统(例如SVN,GIT等),那么一般情况下.suo都是要加入到忽略规则的。官方文档也有提到这个文件不应被添加到代码版本控制中,自己归纳的理由如下:

    1. 毕竟保存的内容都是针对当前用户的,本身也并不会对项目造成任何影响。
    2. 如果将.suo文件提交到版本控制系统中,反而会经常触发更改跟踪,开发人员需要一直处理冲突,因此很浪费时间和精力,基本上对团队开发来说没什么意义。
    3. 属于隐藏文件,众猿皆知大部分隐藏文件都是独立的或是与项目无关紧要的,应当被忽略。

           关于删除.suo文件的问题,一般就是想删就删,反正也没多大影响,顶多就是失去了当前的用户自定义设置。.suo一般是VS自动生成的,初建项目就有,其他动作也会触发更新和创建,例如在VS中进行全部保存/生成操作,或者整个VS关闭时都会重新创建/更新这个文件,这点可以自己做个测试。

           但是如果文件在整个VS项目关闭后删除,只有触发前面所说的情况才能被重新创建出来,这点要留意下。另外在VS2015之前的版本.suo都是直接放在解决方案的根目录下,现在则移动到了..[解决方案目录].vs[解决方案名称]vs15v15下。

  • 相关阅读:
    poj2756
    poj3425
    poj1740
    poj1948
    poj2853
    如何在CRichEditCtrl控件中直接读如RTF格式的文件
    pRichEdit>SetBackgroundColor(FALSE, oldclr); 只能设置一半 的背景色
    Directx报错02
    报错 error C2664: 'CreateWindowExA' : cannot convert parameter 2 from 'unsigned short [10]' to 'const char *'
    Debug/Release Dll报错
  • 原文地址:https://www.cnblogs.com/bosamvs/p/9018606.html
Copyright © 2020-2023  润新知