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

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


当前回答

不,您不应该将它们添加到源代码控制中,因为—正如您所说—它们是特定于用户的。

SUO(解决方案用户选项):记录 所有可能的选择 把你的解决方案联系起来 每次你打开它,里面都有 自定义 取得了。

.user文件包含项目的用户选项(而SUO是解决方案)并扩展了项目文件名(例如anything.csproj.user包含anything.csproj.user的用户设置)。csproj项目)。

其他回答

默认情况下,Microsoft的Visual SourceSafe在源代码控制中不包括这些文件,因为它们是用户特定的设置文件。如果您使用SVN作为源代码控制,我会遵循这个模型。

它们包含有关项目的特定设置,这些设置通常分配给单个开发人员(例如,在调试应用程序时启动的启动项目和开始页面)。

所以最好不要把它们添加到版本控制中,让VS重新创建它们,这样每个开发人员都可以有他们想要的特定设置。

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

希望这能有所帮助。

不,您不应该将它们添加到源代码控制中,因为—正如您所说—它们是特定于用户的。

SUO(解决方案用户选项):记录 所有可能的选择 把你的解决方案联系起来 每次你打开它,里面都有 自定义 取得了。

.user文件包含项目的用户选项(而SUO是解决方案)并扩展了项目文件名(例如anything.csproj.user包含anything.csproj.user的用户设置)。csproj项目)。

其他人解释了为什么有*。Suo和*。在源代码控制下的用户文件不是一个好主意。

我建议你将这些模式添加到svn:ignore属性中,原因有二:

这样其他开发商就不会倒闭了 一个开发人员的设置。 所以当你查看状态或提交时 文件,这些文件不会使代码库变得混乱,也不会使您需要添加的新文件变得模糊。