最好的一般SVN忽略模式?
什么是最好的(或尽可能)一般的SVN忽略模式使用?
有许多不同的IDE,编辑器,编译器,插件,平台等特定的文件和一些“重叠”的文件types(即对于某些types的项目而不是其他的)。
但是,不pipe您的开发环境的具体情况如何,您都不会自动将其包含在源代码pipe理中的大量文件types。
对于这个问题的答案可以作为任何项目的一个很好的起点 – 只要求他们添加他们需要的less数环境特定项目。 它也可以适用于其他版本控制系统(VCS)。
我会把我自己的两分钱添加到这个问题上:
在Windows和Linux平台上,我使用以下SVN忽略模式,将TortoiseSVN和Subversion CLI用于本地C ++,C#/ VB.NET和PERL项目。 它适合我!
格式化为复制和粘贴:
* .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发行版发行版debugdebugging忽略忽略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 发行版本debuggingdebugging 忽略忽略bin Bin obj Obj * .csproj.user * .user * .generated.cs
基于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日志输出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日志输出TestResults * .crunchsolution。* * .crunchproject。*
每次遇到一个我通常不想在存储库中的文件,我都会更新这个模式。 我相信没有“最好的”模式 – 它总是取决于你所开发的语言和环境 。
而且,你不太可能想到所有可能的“可忽略的”文件types – 你总会遇到一个你忘记包含的文件types。 这就是为什么更新模式,你走的最好的。
Windows用户可能想扔在desktop.ini和thumbs.db。
用于我的Visual Studio项目
*/bin */obj *.user *.suo
您可以从那里扩展更多的文件types。
Visual Studio(VC ++)用户肯定需要排除.ncb文件
Mac用户可能想要投入.DS_Store。 另外,如果有开发者使用Emacs或者Vim,你可能要添加~~和 ##。
对于Eclipse,我使用:
bin .*
*获取所有的项目configuration。 你几乎从不想检查一个“隐藏的”目录或文件,但如果出现,你仍然可以添加它。
既然你可能会使用第三方的libs和dll作为项目的一部分,那么我就没有看到从存储库中阻止* .lib和* .dll的智慧。 这些是要存储在存储库中的东西。
Visual Studio 2010用户应该添加ipch
(包含C ++预编译头文件的文件夹)和*.sdf
(任何types项目的intellisense使用的大文件)。
该模式取决于您正在使用的操作系统。
在Linux上,您将要阻止** .o *,**。so *,**。a *和**。la *开头。 您可能还想要阻止**〜*(来自编辑的备份文件)和#*#(来自崩溃的emacs备份)。
在Windows上,至less需要** .obj *,** .lib *和** .dll *。
您需要阻止的任何其他文件取决于您的IDE,编辑器和编译器。
如果你使用Resharper,你需要添加Resharper。
另外一个要注意的是Ankh *。*
不要忘记NCrunch临时文件:
*.crunchsolution.* *.crunchproject.*
和核心转储(cygwin,linux)
*.stackdump core.*
gitignore.io为git提供了可configuration的模式。 他们提供了一个可读的列表,你需要重新格式化SVN。
例如, 请求MicrosoftOffice和Windows返回
# Created by https://www.gitignore.io/api/microsoftoffice,windows ### MicrosoftOffice ### *.tmp # Word temporary ~$*.doc* # Excel temporary ~$*.xls* # Excel Backup File *.xlk # PowerPoint temporary ~$*.ppt* # Visio autosave temporary files *.~vsdx ### Windows ### # Windows image file caches Thumbs.db ehthumbs.db # Folder config file Desktop.ini # Recycle Bin used on file shares $RECYCLE.BIN/ # Windows Installer files *.cab *.msi *.msm *.msp # Windows shortcuts *.lnk
gitignore.io为git提供了可configuration的模式。 他们提供了一个可读的列表,你需要重新格式化SVN。
例如, 请求MicrosoftOffice和Windows返回
# Created by https://www.gitignore.io/api/microsoftoffice,windows ### MicrosoftOffice ### *.tmp # Word temporary ~$*.doc* # Excel temporary ~$*.xls* # Excel Backup File *.xlk # PowerPoint temporary ~$*.ppt* # Visio autosave temporary files *.~vsdx ### Windows ### # Windows image file caches Thumbs.db ehthumbs.db # Folder config file Desktop.ini # Recycle Bin used on file shares $RECYCLE.BIN/ # Windows Installer files *.cab *.msi *.msm *.msp # Windows shortcuts *.lnk
它似乎可以直接用作svn:global-ignore