每次我开始一个项目时,我都要仔细考虑要从源代码管理中排除哪些文件。是否有人列出了标准清单,以便从头开始查找?我自己工作所以我没有完成它。 我很欣赏在DLL的情况下,你想要包含一些并排除其他的,所以它不仅仅依赖于文件扩展名。 我的项目是ASP.Net,虽然对其他模板的一般性讨论也很有用。
答案 0 :(得分:9)
来自http://blog.goneopen.com/2009/06/git-excludes-for-dotnet/:
.DS_Store
._*
TestResults
*Resharper*
**.ReSharper**
**\_ReSharper.**
*.bak
*.cache
*.resharperoptions
*.suo
*.user
*.vsprops
*/TestResults
*\bin*
*\obj*
_ReSharper.*
答案 1 :(得分:5)
如果您使用ReSharper,请务必排除_Resharper*
个文件夹
如果您使用Subversion进行源代码管理,则VisualSVN Visual Studio插件会自动为您管理排除。
确保包含项目引用的任何第三方dll,这些dll不会出现在构建或部署计算机的GAC中。我们的做法是拥有一个lib
文件夹,所有这些dll都存在,我们从该文件夹中添加对它们的引用。这可以确保hintpath
文件中的csproj
属性正确(它存储引用的dll的相对路径)。
答案 2 :(得分:3)
请勿对sourcecontrol bin
和obj
文件夹以及*.suo
和*.user
(如果您使用的是Visual Studio)文件进行控制。
如果您对在源代码管理中保留第三方DLL感到不安,请尝试使用Componento,授予它,但还没有相应的组件数据库。
答案 3 :(得分:3)
作为一般规则,只有构建应用程序所需的源控制文件。
答案 4 :(得分:1)
项目文件夹中的通用ingores:
*.Cache
*.user
bin
obj
从解决方案(升级)
*.cache
_PublishedWebSites
*.suo
我们还得到以下内容 - 这是通用配置引用的特定于实例的配置设置(即asp.net应用程序的web.config)
AppSettings.config
Provider.config
connections.config
版本控制的.config.sample文件。
你应该在你的subversion设置中将bin,obj,* .cache,* .user和* .suo设置为全局 - 但是因为这是(如果内存服务)机器特定的,你可能最终会做明确的无论如何都会忽略