it-swarm.it

Il miglior SVN generale ignora il pattern?

Qual è il migliore (o il migliore possibile) SVN generale ignorare il modello da usare?

Esistono diversi file specifici IDE, editor, compilatore, plug-in, piattaforma, ecc. Specifici e alcuni tipi di file che "si sovrappongono" (vale a dire desiderabili per alcuni tipi di progetti e non per altri).

Esistono tuttavia numerosi tipi di file che non si desidera che vengano mai inclusi automaticamente nel controllo del codice sorgente indipendentemente dalle specifiche dell'ambiente di sviluppo.

La risposta a questa domanda servirebbe da buon punto di partenza per qualsiasi progetto, richiedendo solo loro di aggiungere i pochi elementi specifici dell'ambiente di cui hanno bisogno. Potrebbe essere adattato anche per altri sistemi di controllo versione (VCS).

172
Zach Burlingame

Aggiungerò i miei due centesimi a questa domanda:

Uso il seguente modello ignorato SVN con TortoiseSVN e Subversion CLI per i progetti nativi C++, C #/VB.NET e Perl su piattaforme Windows e Linux. Funziona bene per me!

Formattato per copia e incolla:

 *. 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 versione Rilascio debug Debug ignore Ignora bin Bin obj Obj * .csproj.user * .user * .generated.cs 

Formattato per la leggibilità:

 *. 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 
 ignora Ignora bin Bin obj Obj 
 *. csproj.user * .user 
 *. generated.cs 
191
Zach Burlingame

Sulla base del modello ignorato di Burly, ho aggiunto ReSharper all'elenco ignora

Formattato per copia e incolla:

*.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

Formattato per la leggibilità:

*.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

Il mio modello ignora per 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 registri output TestResults * .crunchsolution. * * .crunchproject. * 

Formattato per leggibilità

 */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 registra l'output TestResults 
 *. crunchsolution. * * .crunchproject. * 
34
Dima Pasko

Ogni volta che trovo un file che generalmente non desidero nel repository, aggiorno il modello. Credo che non esista un modello "migliore", sempre dipende dalla lingua e dall'ambiente in cui ti sviluppi.

Inoltre, non è molto probabile che tu pensi a tutti i possibili tipi di file "ignorabili": incontrerai sempre un tipo di file che hai semplicemente dimenticato di includere. Ecco perché l'aggiornamento del modello mentre procedi funziona meglio.

17
petr k.

Gli utenti Windows potrebbero voler lanciare desktop.ini e thumbs.db.

12
harpo

Utilizzato per i miei progetti Visual Studio

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

È possibile espandere più tipi di file da lì.

4
icelava

Gli utenti di Visual Studio (VC++) devono assolutamente escludere i file . Ncb

3
Rob Walker

Gli utenti di Visual Studio 2010 devono aggiungere ipch (una cartella che contiene intestazioni precompilate C++) e *.sdf (enormi file utilizzati da intellisense per qualsiasi tipo di progetto).

1
Dalmas

Dato che potresti usare librerie e dll di terze parti come parte del/i progetto/i, non vedo la saggezza nel bloccare * .lib e * .dll dal repository. Queste sono le cose che dovrebbero essere archiviate nel repository.

1
graham.reeds

Gli utenti Mac probabilmente vogliono inserire .DS_Store. Inoltre, se ci sono sviluppatori che usano Emacs o Vim, probabilmente vorrai aggiungere ~ ~ e # #.

1
Jim Deville

Per Eclipse, utilizzo:

bin
.*

. * ottiene tutta la configurazione del progetto. Non si desidera quasi mai archiviare una directory o un file "nascosto", ma se si presenta, è comunque possibile svn aggiungerlo.

1
noah

E core dump (cygwin, linux)

*.stackdump core.*
0
Holger Bille

gitignore.io fornisce modelli configurabili per git. Forniscono un elenco leggibile, che è necessario riformattare per SVN.

Ad esempio, richiede MicrosoftOffice e Windows ritorna

# 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

Devi aggiungere Resharper al mix se ne usi uno.

un altro da cercare è Ankh *. *

0
Hammad Rajjoub

Non dimenticare NCrunch file temporanei:

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

gitignore.io fornisce modelli configurabili per git. Forniscono un elenco leggibile, che è necessario riformattare per SVN.

Ad esempio, richiede MicrosoftOffice e Windows ritorna

# 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

Sembra che possa essere usato direttamente come svn:global-ignore

0
koppor

Il modello dipende dal sistema operativo in uso.

Su Linux, ti consigliamo di bloccare **. O *, **. So *, **. A * e **. La * per cominciare. Potresti anche voler bloccare ** ~ * (file di backup dalla modifica) e # * # (backup di emacs da un arresto anomalo).

Su Windows, avrai almeno **. Obj *, **. Lib * e **. Dll *.

Qualsiasi altro file che devi bloccare dipende dal tuo IDE, editor e compilatore.

0
Branan