必须将哪些文件/文件夹添加到源代码管理中?

时间:2011-10-03 17:43:18

标签: vb.net version-control

我需要知道必须将哪些文件和文件夹添加到源代码管理中,以及可以省略哪些文件/文件夹。

我知道我可以省略bin /和obj /,以及.suo文件,因为它是特定于用户的,但是树的其余部分呢?

FWIW,这是一个表单+一个模块项目:

Directory of C:\Projects\MyApp\WindowsApplication1
03/10/2011  15:04             3.040 Form1.Designer.vb
03/10/2011  15:04             5.814 Form1.resx
03/10/2011  15:08             2.903 Form1.vb
03/10/2011  13:40               194 Module1.vb
03/10/2011  13:36    <DIR>          bin
03/10/2011  13:36    <DIR>          My Project
03/10/2011  13:36    <DIR>          obj
03/10/2011  13:36               934 WindowsApplication1.sln
03/10/2011  13:36             5.678 WindowsApplication1.vbproj
03/10/2011  13:36                74 WindowsApplication1.vbproj.user

Directory of C:\Projects\MyApp\WindowsApplication1\My Project
03/10/2011  02:51             1.522 Application.Designer.vb
03/10/2011  02:51               510 Application.myapp
03/10/2011  02:51             1.199 AssemblyInfo.vb
03/10/2011  02:51             2.807 Resources.Designer.vb
30/07/2008  06:54             5.612 Resources.resx
03/10/2011  02:51             3.058 Settings.Designer.vb
30/07/2008  06:54               279 Settings.settings
               7 File(s)         14.987 bytes

谢谢。


我们可以安全地忽略这些文件夹吗? bin /,obj /和我的项目/。

WindowsApplication1.sln和WindowsApplication1.vbproj.user?

怎么样?

3 个答案:

答案 0 :(得分:3)

基本上,您的工具链(编译器等)自动生成并且可以轻松地从源代码重新创建的所有内容都应该被忽略。您应该检查您编写的任何内容,源代码,makefile等。

问自己这个问题:如果我要在干净安装我的工具的情况下在另一台计算机上编译这个项目,我是否需要这个文件?如果答案为“是”,请办理登机手续,否则不办理。

如果你不确定,试试吧!备份所有文件,然后删除您认为无需签入的内容,并查看您的项目是否仍然正确构建并自动重新创建该文件。

答案 1 :(得分:3)

您需要对编译/构建所需的所有文件或运行时需要的所有文件进行版本控制。以下是一些例子:

汇编/体形:

  • 源代码文件(.aspx,.ascx,.cs / .vb)
  • 脚本(.css,.js,.xslt,.xml,...)

运行时:

  • 文档模板(.pdf,.doc,infopath文件,...)
  • 配置文件(app.config,web.config,自定义配置,例如log4net配置文件,......)

您可以忽略所有其他文件/文件夹,例如.suo,.user,bin,obj,debug / release

答案 2 :(得分:3)

忽略所有这些(credit,同时documentation)。

  • *仓
  • *。OBJ
  • *。exe文件
  • *。DLL
  • *。PCH
  • *。用户
  • *。锁
  • * TLB
  • TestResults(VSTS单元测试目录)

或者,找一个源控制系统的visual studio插件(例如AnkhSVN for SVN),它会自动完成。