it-swarm.cn

最好的一般SVN忽略模式?

使用一般SVN忽略模式的最佳(或尽可能好)是什么?

存在许多不同的IDE,编辑器,编译器,插件,平台等特定文件和一些“重叠”的文件类型(即某些类型的项目而不是其他类型的项目)。

但是,无论开发环境的具体情况如何,您都希望自动将大量文件类型自动包含在源代码管理中。

这个问题的答案可以作为任何项目的良好起点 - 只要求他们添加他们需要的少数环境特定项目。它也可以适用于其他版本控制系统(VCS)。

173
Zach Burlingame

我会在这个问题上加上我自己的两分钱:

我使用TortoiseSVN和Subversion CLI的以下SVN忽略模式,用于Windows和Linux平台上的本机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 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 
发布发布调试调试
忽略忽略bin Bin obj Obj 
 *。csproj.user * .user 
 *。generated.cs 
192
Zach Burlingame

根据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
44
Three Sevenths

我对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输出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。* 
34
Dima Pasko

每次我遇到一个文件,我通常不想在存储库中,我更新模式。我相信没有“最好的”模式 - 它总是 取决于语言和环境 你发展。

而且,你不太可能想到所有可能的“可忽略的”文件类型 - 你总会遇到一个你忘记包含的文件类型。这就是为什么在你去的时候更新模式效果最好。

17
petr k.

Windows用户可能想要输入desktop.ini和thumbs.db。

12
harpo

用于我的Visual Studio项目

*/bin */obj *.user *.suo

您可以从那里扩展更多文件类型。

4
icelava

Visual Studio(VC++)用户肯定需要排除 .ncb files

3
Rob Walker

Visual Studio 2010用户应该添加ipch(包含C++预编译头文件夹的文件夹)和*.sdf(intellisense用于任何类型项目的大文件)。

1
Dalmas

由于您可能正在使用第三方库和dll作为项目的一部分,因此我没有看到从存储库中阻止* .lib和* .dll的智慧。这些是要存储在存储库中的内容。

1
graham.reeds

Mac用户可能想要投入.DS_Store。另外,如果有开发人员使用Emacs或Vim,你可能想添加〜 〜和# #。

1
Jim Deville

对于Eclipse,我使用:

bin
.*

。*获取所有项目配置。您几乎从不想要检查“隐藏”目录或文件,但如果它出现,您仍然可以添加它。

1
noah

和核心转储(cygwin,linux)

*.stackdump core.*
0
Holger Bille

gitignore.io 为git提供可配置的模式。它们提供了一个可读列表,您需要重新格式化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
0
koppor

如果您使用Resharper,请将其添加到混合物中。

另一个要注意的是Ankh *。*

0
Hammad Rajjoub

别忘了 NCrunch 临时文件:

*.crunchsolution.* *.crunchproject.*
0
Richard Dingwall

gitignore.io 为git提供可配置的模式。它们提供了一个可读列表,您需要重新格式化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

0
koppor

该模式取决于您使用的操作系统。

在Linux上,你要阻止**。o *,**。so *,**。a *和**。la *开头。您可能还想阻止**〜*(编辑备份文件)和#*#(崩溃时的emacs备份)。

在Windows上,你至少需要** .obj *,**。lib *和**。dll *。

您需要阻止的任何其他文件取决于您的IDE,编辑器和编译器。

0
Branan