使用するのに最適な(または可能な限り)一般的なSVN無視パターンは何ですか?
多くの異なるIDE、エディター、コンパイラー、プラグイン、プラットフォームなどの特定のファイルと「オーバーラップ」するいくつかのファイルタイプがあります(つまり、一部のタイプのプロジェクトには望ましいが、他のプロジェクトには望ましくない)。
ただし、開発環境の仕様に関係なく、ソース管理に自動的に含めたくないファイルタイプが多数あります。
この質問への答えは、あらゆるプロジェクトの良い出発点として役立ちます。必要な環境固有のアイテムをいくつか追加するだけでよいのです。他のバージョン管理システム(VCS)にも適用できます。
この質問に2セントを追加します。
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リリースデバッグデバッグ無視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リリースデバッグDebug ignore Ignore 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。*
リポジトリに入れたくないファイルに出くわすたびに、パターンを更新します。 「最良の」パターンはないと思います-それは常に言語と環境に依存します開発する.
さらに、可能性のある「無視できる」ファイルタイプすべてを考えることはあまりありません。常に含めるのを忘れたファイルタイプに常に遭遇します。移動中にパターンを更新するのが最適な理由です。
Windowsユーザーは、desktop.iniとthumbs.dbをスローする場合があります。
Visual Studioプロジェクトに使用
*/bin */obj *.user *.suo
そこからより多くのファイルタイプを展開できます。
Visual Studio(VC++)ユーザーは、。ncbファイルを除外する必要があります
Visual Studio 2010ユーザーは、ipch
(C++プリコンパイル済みヘッダーを含むフォルダー)と*.sdf
(あらゆる種類のプロジェクトでインテリセンスが使用する巨大なファイル)。
プロジェクトの一部としてサードパーティのライブラリとDLLを使用している可能性があるため、リポジトリから* .libと* .dllをブロックする知恵はありません。これらは、リポジトリに保存されることを意図したものです。
Macユーザーは、おそらく.DS_Storeを投入したいと思うでしょう。さらに、EmacsまたはVimを使用する開発者がいる場合は、おそらく〜〜and##を追加する必要があります。
Eclipseの場合、以下を使用します。
bin
.*
。*は、すべてのプロジェクト構成を取得します。 「隠された」ディレクトリまたはファイルをチェックインすることはほとんどありませんが、それが表示されても、svnを追加できます。
コアダンプ(cygwin、linux)
*.stackdump core.*
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
Resharperを使用する場合は、ミックスに追加する必要があります。
もう1つ注目すべきは、Ankh *。*です。
NCrunch 一時ファイルを忘れないでください:
*.crunchsolution.* *.crunchproject.*
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
として直接使用できるようです
パターンは、使用しているオペレーティングシステムによって異なります。
Linuxでは、**。o *、**。so *、**。a *、および**。la *を最初からブロックする必要があります。また、**〜*(編集からのバックアップファイル)および#*#(クラッシュからのemacsバックアップ)をブロックすることもできます。
Windowsでは、少なくとも**。obj *、**。lib *、および**。dll *が必要です。
ブロックする必要がある他のファイルは、IDE、エディター、およびコンパイラーによって異なります。