当前位置:  开发笔记 > 编程语言 > 正文

Subversion和Visual Studio项目的最佳实践

如何解决《Subversion和VisualStudio项目的最佳实践》经验,为你挑选了5个好方法。

我最近开始在各种C#项目的工作在Visual Studio中作为将被用于替换这与C语言编写,Perl的各种程序和脚本的补鞋,一起建立了我们目前的系统大规模系统计划的一部分.我正在进行的项目已经达到了致力于颠覆的临界质量.我想知道什么应该和不应该提交到Visual Studio项目的存储库.我知道,这将产生那些刚刚建立的工件和并不真正需要提交的各种文件,我想知道是否有人有对正确使用SVN使用Visual Studio的任何建议.目前,我正在使用带有Visual Studio 2010 beta的SVN 1.6服务器.欢迎任何建议,意见.



1> Justin R...:

根据MSDN:

您可以将以下文件添加到Visual Studio源代码管理:

解决方案文件(*.sln).

项目文件,例如*.csproj,*.vbproj文件.

基于XML的应用程序配置文件,用于控制Visual Studio项目的运行时行为.

无法添加到源代码管理的文件包括以下内容:

解决方案用户选项文件(*.suo).

项目用户选择的文件,例如*.csproj.user,*.vbproj.user文件.

网络信息的文件,例如*.csproj.webinfo,*.vbproj.webinfo中,控制Web项目的虚拟根位置.

例如,构建输出文件*.dll*.exe文件.


这是一个很好的清单.基本上,您需要编译项目所需的最小文件集.

2> GraemeF..:

我建议使用AnkhSVN - Visual Studio 2008/2010的Subversion源代码控制插件.

您可以使用它来执行初始添加和提交解决方案,项目和源到存储库,它不会添加任何构建工件.它不会添加由构建生成的任何内容,只会添加解决方案引用的文件.如果您需要的任何其他零碎都不在您的解决方案中,您可以在之后添加它们.


我尝试过AnkhSVN,发现它倾向于过早地将IDE中的操作解释为源代码控制上的操作,并鼓励开发人员进行单文件提交.我对Tortoise感到高兴.

3> Michael Burr..:

将以下文件放在版本控制中:

.dsw(VS6工作空间)

.dsp(VS6项目)

.sln(VS解决方案)

.*proj(各种类型的VS项目文件)

当然是您创建的源文件和其他工件

不要把下面的文件版本控制:

.ncb(与浏览或intellsense有关)

.suo(用户工作区设置,如窗口放置等 - 我认为)

.user(用户项目设置,如断点等 - 我认为)

此外,不要放入任何目标文件,可执行文件,自动生成的文件(如可能生成的标头).

至于可执行文件和其他生成的文件 - 如果您希望能够存档版本,则可能会有异常.这可能是一个好主意,但您可能希望以不同的方式管理它,并且可能在与源代码不同的地方.如果这样做,还要归档.pdb文件,以便稍后调试.您可能希望使用符号服务器来存储已存档的符号(请参阅符号服务器及其文档的Windows调试工具).

这是我从SVN中排除的VS特定文件列表:

Ankh.Load
*.projdata
*.pdb
*.positions
*proj.user
*proj.*.user
*.ncb
*.suo
*.plg
*.opt
*.ilk
*.pch
*.idb
*.clw
*.aps



4> adrianbanks..:

解决方案级别

添加.sln解决方案文件

忽略.suo解决方案用户选项文件

项目级别:

添加.csproj,.vbproj(和c ++ proj?)文件

忽略.csproj.user,.vbproj.user文件

忽略bin目录

忽略obj目录

忽略在运行时生成的任何文件/目录(即日志)

如果您使用和VS插件,他们可能会生成也需要忽略的文件(即ReSharper生成.resharper.resharper.user文件).

忽略项可以通过文件名(即.MyProject.csproj)显式忽略,也可以通过通配符模式(即.*.csproj.user)忽略.


一旦你设置了你的忽略,检查你的源的干净副本然后建立应该没有显示任何修改(即没有新的无版本文件).



5> Andre Gallo..:

我会手动包含我认为不应该版本控制的所有文件.

我的全局忽略模式是:

.dll .pdb .exe .cache .webinfo .snk bin obj debug _Resharper .user resharper

推荐阅读
勤奋的瞌睡猪_715
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有