最佳一般SVN忽略模式?
什么是最好的(或者尽可能好的)通用SVN忽略模式使用?
有许多不同的IDE,编辑器,编译器,插件,平台等特定文件和一些"重叠"的文件类型(即某些类型的项目需要,而其他类型的项目则不需要)。
但是,无论开发环境如何,都不会自动将大量文件类型包括在源代码管理中。
这个问题的答案可以作为任何项目的一个很好的起点,只要求他们添加一些他们需要的环境特定项目。它也可以适用于其他版本控制系统(VCS)。
解决方案
回答
用于我的Visual Studio项目
*/bin */obj *.user *.suo
我们可以从此处扩展更多文件类型。
回答
我将在这个问题上加上我自己的两分钱:
对于Windows和Linux平台上的本机C ++,C#/ VB.NET和PERL项目,我对TortoiseSVN和Subversion CLI使用以下SVN忽略模式。这对我来说很有效!
格式化以进行复制和粘贴:
*.o *.lo *.la #*# .*.rej *.rej .*~ *~ .#* .DS_Store thumbs.db Thumbs.db *.bak *.class *.exe *.dll *.mine *.obj *.ncb *.lib *.log *.idb *.pdb *.ilk *.msi* .res *.pch *.suo *.exp *.*~ *.~* ~*.* cvs CVS .CVS .cvs release Release debug Debug ignore Ignore bin Bin obj Obj *.csproj.user *.user *.generated.cs
格式化以提高可读性:
*.o *.lo *.la #*# .*.rej *.rej .*~ *~ .#* .DS_Store thumbs.db Thumbs.db *.bak *.class *.exe *.dll *.mine *.obj *.ncb *.lib *.log *.idb *.pdb *.ilk *.msi* .res *.pch *.suo *.exp *.*~ *.~* ~*.* cvs CVS .CVS .cvs release Release debug Debug ignore Ignore bin Bin obj Obj *.csproj.user *.user *.generated.cs
回答
Windows用户可能想扔出desktop.ini和thumbs.db。
回答
Visual Studio(VC ++)用户肯定需要排除.ncb文件
回答
每次遇到通常不希望在存储库中使用的文件时,都会更新该模式。我相信没有"最佳"模式,它总是取决于我们所使用的语言和环境。
此外,我们不太可能会想到所有可能会遇到的"可忽略"文件类型,而这些文件类型总是会遇到我们只是忘记包含的文件类型。这就是为什么在运行时更新模式效果最佳的原因。
回答
Mac用户可能想放入.DS_Store。另外,如果有开发人员正在使用Emacs或者Vim,则可能要添加~~和##。
回答
该模式取决于我们使用的操作系统。
在Linux上,我们首先要阻止**。o ,。so *,。a 和。la 。我们可能还想阻止*〜(编辑时的备份文件)和#(崩溃崩溃时的emacs备份)。
在Windows上,我们至少需要**。obj *,*。lib 和。dll *。
我们需要阻止的任何其他文件取决于IDE,编辑器和编译器。
回答
对于Eclipse,我使用:
bin .*
。*获取所有项目配置。我们几乎永远都不想签入"隐藏"目录或者文件,但如果出现该目录或者文件,仍然可以svn添加它。
回答
由于我们可能在项目中使用了第三方库和dll,所以我看不出从存储库中阻止* .lib和* .dll的智慧。这些就是要存储在存储库中的东西。
回答
基于Burly的忽略模式,我将ReSharper添加到了忽略列表中
格式化用于复制和粘贴:
*.o *.lo .la ## .*.rej .rej .~ ~ .# .DS_Store thumbs.db Thumbs.db *.bak *.class *.exe *.dll *.mine *.obj *.ncb *.lib *.log *.idb *.pdb *.ilk .msi .res *.pch *.suo *.exp ~. cvs CVS .CVS .cvs release Release debug Debug ignore Ignore bin Bin obj Obj *.csproj.user *.user _ReSharper.* *.resharper.user
格式化以提高可读性:
*.o *.lo .la ## .*.rej .rej .~ ~ .# .DS_Store thumbs.db Thumbs.db *.bak *.class *.exe *.dll *.mine *.obj *.ncb *.lib *.log *.idb *.pdb *.ilk .msi .res *.pch *.suo *.exp ~. cvs CVS .CVS .cvs release Release debug Debug ignore Ignore bin Bin obj Obj *.csproj.user *.user _ReSharper.* *.resharper.user
回答
我对Visual Studio的忽略模式:
*/bin */obj */Release */Debug *.suo *.err *.log *.obj *.bin *.dll *.exe *.LOG *.user *.pdb [tT]emp [tT]empPE Ankh.Load thumbs.db *.resharper *.vspscc *.vsssccc *.scc */_ReSharper* */_ReSharper.* bin obj *.resharperoptions *.db *.bak *_ReSharper* *.snk logs output TestResults *.crunchsolution.* *.crunchproject.*
格式化以提高可读性
*/bin */obj */Release */Debug *.suo *.err *.log *.obj *.bin *.dll *.exe *.LOG *.user *.pdb [tT]emp [tT]empPE Ankh.Load thumbs.db *.resharper *.vspscc *.vsssccc *.scc */_ReSharper* */_ReSharper.* bin obj *.resharperoptions *.db *.bak *_ReSharper* *.snk logs output TestResults *.crunchsolution.* *.crunchproject.*
回答
如果使用,则将Resharper添加到混合物中。
另一个需要注意的是Ankh 。