Visual Studio解决方案包含两种类型的隐藏用户文件。一个是解决方案。suo文件,这是一个二进制文件。另一个是project .user文件,它是一个文本文件。这些文件到底包含哪些数据?
我也一直在考虑是否应该将这些文件添加到源代码控制(在我的情况下是Subversion)。如果我没有添加这些文件,而另一个开发人员签出了解决方案,Visual Studio会自动创建新的用户文件吗?
Visual Studio解决方案包含两种类型的隐藏用户文件。一个是解决方案。suo文件,这是一个二进制文件。另一个是project .user文件,它是一个文本文件。这些文件到底包含哪些数据?
我也一直在考虑是否应该将这些文件添加到源代码控制(在我的情况下是Subversion)。如果我没有添加这些文件,而另一个开发人员签出了解决方案,Visual Studio会自动创建新的用户文件吗?
当前回答
它们包含有关项目的特定设置,这些设置通常分配给单个开发人员(例如,在调试应用程序时启动的启动项目和开始页面)。
所以最好不要把它们添加到版本控制中,让VS重新创建它们,这样每个开发人员都可以有他们想要的特定设置。
其他回答
这些文件是特定于用户的选项,应该独立于解决方案本身。Visual Studio会根据需要创建新的,所以它们不需要检入到源代码控制中。实际上,最好不要这样做,因为这样可以让开发人员根据自己的需要定制自己的环境。
使用Rational ClearCase,答案是否定的。只有.sln & .*proj应该在源代码控制中注册。
我不能为其他供应商负责。如果我没记错的话,这些文件是“用户”特定的选项,您的环境。
不要将这些文件添加到版本控制中。这些文件是自动生成的,包含特定于工作站的信息,如果签入到版本控制,将在其他工作站引起麻烦。
These files contain user preference configurations that are in general specific to your machine, so it's better not to put it in SCM. Also, VS will change it almost every time you execute it, so it will always be marked by the SCM as 'changed'. I don't include either, I'm in a project using VS for 2 years and had no problems doing that. The only minor annoyance is that the debug parameters (execution path, deployment target, etc.) are stored in one of those files (don't know which), so if you have a standard for them you won't be able to 'publish' it via SCM for other developers to have the entire development environment 'ready to use'.
如果你在ProjectProperties>Debugging>Environment中设置了可执行目录依赖项,路径将存储在'。用户的文件。
假设我在上面提到的字段中设置这个字符串:"PATH=C:\xyz\bin" 这就是它被存储在'中的方式。用户的文件:
< LocalDebuggerEnvironment >路径= C: \ xyz \ bin美元(LocalDebuggerEnvironment) < / LocalDebuggerEnvironment >
这对我们在OpenCV中工作有很大帮助。我们可以为不同的项目使用不同版本的OpenCV。另一个优点是,在新机器上建立我们的项目非常容易。我们只需要复制相应的依赖dirs。所以对于一些项目,我更喜欢添加'。用户'到源代码控制。
尽管如此,它完全依赖于项目。你可以根据自己的需要接听电话。