Visual C#Studio项目中的哪些文件不';不需要进行版本控制吗?
我是Visual C#Studio的新手(实际上使用的是快速版,但另一个开发人员使用的是完整版),我们使用的是版本控制(svn) 我可以接受将项目文件添加到存储库中,因为这个repo只适用于我们两个使用visualc#Studio的人。但感觉里面有一些不相关的文件。熟悉Visual C#Studio项目文件的人能告诉我哪些文件可以安全地被svn:忽略吗 一些可疑文件:Visual C#Studio项目中的哪些文件不';不需要进行版本控制吗?,c#,visual-studio,visual-studio-2008,svn,C#,Visual Studio,Visual Studio 2008,Svn,我是Visual C#Studio的新手(实际上使用的是快速版,但另一个开发人员使用的是完整版),我们使用的是版本控制(svn) 我可以接受将项目文件添加到存储库中,因为这个repo只适用于我们两个使用visualc#Studio的人。但感觉里面有一些不相关的文件。熟悉Visual C#Studio项目文件的人能告诉我哪些文件可以安全地被svn:忽略吗 一些可疑文件: project.csproj project.csproj.Debug.cachefile project.csproj.us
- project.csproj
- project.csproj.Debug.cachefile
- project.csproj.user
- project.sln
- 苏项目
- Content\Content.contentproj
我肯定需要。sln,但这是什么。苏?还有csproj?是否可以/应该在加载项目时由Visual C#Studio生成这些文件?我们也与Visual Studio C#和SVN合作,我不知道所有的项目文件,但我们只排除完整的bin目录。该.sln文件与.proj文件(每个项目一个)一起定义了您的解决方案,所以把它们放在你的svn里 您可以跳过.suo文件(个人设置-无论如何都是二进制文件)以及bin或obj文件夹。也可以保留.cache文件。需要时 *.sln-解决方案文件包含对所有项目的引用以及项目之间的依赖关系。
*.csproj-项目文件本身。这些文件说明项目中包含哪些文件、引用以及项目的构建步骤 不是
*.suo-这是一个用户设置文件…不应进行版本控制:
- .csproj.user是用户的项目文件设置(例如启动项目)
- .suo是用户的解决方案文件设置
- .sln是解决方案文件本身(它包含哪些项目等)
- .csproj是项目文件
我对“contentproj”不太清楚,但它听起来像是一个项目文件,应该在svn下。您肯定需要csproj文件。。。您可能需要尝试AnkhSVN或VisualSVN,这些VS加载项只向SVN添加所需的文件 或者可以从目录结构中删除文件,直到不再加载为止
我建议以这种方式进行实验,因为这是了解解决方案是如何通过VS构建的一种很好的方法。不包括
bin
obj
*.suo
*.用户
\u Resharper*
(如果有)
包括*.sln
*csproj先生
您还可以在github上检查 每次构建解决方案(bin和obj文件夹)时,我都会忽略Visual Studio解决方案用户选项文件(*.suo)和二进制文件目录。csproj定义项目结构。这是至关重要的 这是我在Tortoise SVN中添加到全局忽略列表的内容:
*.suo *.user bin obj *.pdb *.cache *_svn *.svn *.suo *.user *.build-res TestResults _ReSharper*
要补充的是,应该排除在构建时重新生成的任何内容。例如,从预构建事件生成的文件,或者在某些情况下是自定义工具。请检查此项-amd您将为您生成一个.gitignore文件,此外,如果您有一个包含多种语言的解决方案,您还可以将多种语言/ide“忽略文件”连接在一起。因为这在其他答案中尚未指出: 在将Visual Studio与Unity 3D一起使用的情况下,可以安全地将*.csproj和*.sln添加到.gitignore文件中,这与通常的情况相反 事实上,项目结构是由Unity本身管理的,而不是由VisualStudio管理的。将它们保留在源代码管理中的唯一后果是冲突,如果由于某些原因,提交者之间正在使用不同的VisualStudio版本,则更是如此
Unity 3D的gitignore:情况并非总是如此。由SingleFileGenerator生成的文件,以及与.xaml、.resx和表单关联的设计器生成的文件都应该签入。这正是我在某些情况下说的原因。sln是解决方案文件,csproj是c#项目文件。您将需要这两个文件。suo是解决方案用户选项文件,顾名思义,您不需要该文件。它只包含用户选项。也都是csproj。文件也可以被忽略。来自微软的显式列表。