最佳一般SVN忽略模式?

时间:2020-03-05 18:59:24  来源:igfitidea点击:

什么是最好的(或者尽可能好的)通用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