11

Ho installato Git per lo sviluppo con Visual Studio 2008. Gran parte del lavoro sarà di nuovo sviluppo, ma abbiamo alcuni vecchi progetti precedenti a VS2005 che voglio portare nel nuovo repository. C'è una discussione esistente sul generale VS/Git integration ma la mia domanda è limitata al file .gitignore e Visual Studio.File da ignorare durante l'utilizzo di Visual Studio con Git

La mia domanda ha due parti:

  • Quali voci dovrebbero essere incluse nel file .gitignore per coprire i file specifici di Visual Studio come file binari, assemblee, file di debug, ecc? Alcuni sono stati coperti nella discussione sopra menzionata, ma esiste un set completo?

  • In quali situazioni è necessario escludere i file globalmente, o per un singolo repository o utilizzando la variabile di ambiente?

Conosco già il COME. Ecco un estratto da Git user-manual sull'ignorare i file.

Se si desidera escludere i modelli di effetto solo alcuni repository (invece di ogni repository per un determinato progetto), si può invece mettere in un file nel repository chiamato .git/informazioni/escludere o in qualsiasi file specificato dalla variabile core.excludesfile configurazione . Alcuni comandi git possono anche prendere i modelli di esclusione direttamente sulla riga di comando . Vedi gitignore(5) per i dettagli di .

+0

Dal momento che questo è qualcosa che cambia nel tempo, penso che la migliore risposta a questa domanda sia una lista che viene mantenuta dalla comunità. Pertanto, posso suggerire di contrassegnare la risposta "github" sotto come risposta corretta a questa domanda. –

risposta

8

Nel GitExtensions il .gitignore default è questo. Può essere un po 'corto, eliminando le estensioni dei file più individuali ed escludere solo le directory in cui si trovano

*.obj 
*.exe 
*.exp 
*.pdb 
*.dll 
*.user 
*.aps 
*.pch 
*.vspscc 
*_i.c 
*_p.c 
*.ncb 
*.suo 
*.tlb 
*.tlh 
*.bak 
*.cache 
*.ilk 
*.log 
*.zip 
[Dd]ebug*/ 
*.lib 
*.sbr 
Thumbs.db 
[Ll]ib/ 
[Rr]elease*/ 
[Tt]est[Rr]esults/ 
_UpgradeReport_Files/ 
_ReSharper.*/ 
+6

L'esclusione della DLL è una cattiva idea se si includono librerie DLL nel proprio progetto, ad es. componenti di terze parti – Rad

+0

Conrad: quindi fare .dll.shippato e copiare – Joshua

7

Si dovrebbe ignorare:

  • il bin directory
  • il obj directory
  • *.suo
  • *.user