Visual Studio解决方案包含两种类型的隐藏用户文件。一个是解决方案。suo文件,这是一个二进制文件。另一个是project .user文件,它是一个文本文件。这些文件到底包含哪些数据?

我也一直在考虑是否应该将这些文件添加到源代码控制(在我的情况下是Subversion)。如果我没有添加这些文件,而另一个开发人员签出了解决方案,Visual Studio会自动创建新的用户文件吗?


当前回答

我们不提交二进制文件(*.suo),但我们提交.user文件。例如,.user文件包含用于调试项目的启动选项。你可以在“Debug”选项卡的项目属性中找到启动选项。我们在一些项目中使用了NUnit,并配置了NUnit -gui.exe作为项目的开始选项。如果没有.user文件,每个团队成员都必须单独配置它。

希望这能有所帮助。

其他回答

不,它们不应该用于源代码控制,因为它们是开发人员/机器特定的本地设置。

GitHub在https://github.com/github/gitignore/blob/master/VisualStudio.gitignore上为VisualStudio用户提供了一个建议的文件类型列表

对于svn,我有以下global-ignore属性集:

* .DotSettings.User * .onetoc2 *。suo .vs预编译的web thumbs.db obj bin调试 *。user * * .vshost。 * .tss * .dbml.layout

No.

我只是想要一个简短的答案,但没有。

不要将这些文件添加到版本控制中。这些文件是自动生成的,包含特定于工作站的信息,如果签入到版本控制,将在其他工作站引起麻烦。

我们不提交二进制文件(*.suo),但我们提交.user文件。例如,.user文件包含用于调试项目的启动选项。你可以在“Debug”选项卡的项目属性中找到启动选项。我们在一些项目中使用了NUnit,并配置了NUnit -gui.exe作为项目的开始选项。如果没有.user文件,每个团队成员都必须单独配置它。

希望这能有所帮助。

您不能对.user文件进行源代码控制,因为这是特定于用户的。它包含远程机器的名称和其他与用户相关的内容。这是一个vcproj相关的文件。

suo文件是一个sln相关的文件,它包含“解决方案用户选项”(启动项目,窗口位置(停靠的内容和位置,浮动的内容),等等。

这是一个二进制文件,我不知道它是否包含“用户相关”的内容。

在我们公司,我们不把这些文件置于源代码控制之下。