2009-06-05 3 views
14

Ho appena iniziato a utilizzare Subversion con le applicazioni Web ASP.NET tramite il plug-in IDE VisualSVN. Ci sono un sacco di file che Visual Studio genera automaticamente quindi non voglio controllare la versione perché non fanno parte della codebase e non sono necessari per la compilazione.Progetti ASP.NET con Subversion (VisualSVN Client) - Quali file dovrei ignorare?

Qualcuno ha un elenco definitivo dei file principali che deve essere ignorato quando si esegue il commit su Subversion da un'applicazione Web ASP.NET? e come avrei fatto a ignorare questi file. Se possibile mi piacerebbe impostarlo globalmente in modo che non debba continuare a fare la stessa cosa per ogni applicazione Web ASP.NET che scrivo e creare un nuovo repository per.

Risposte

un elenco di file da ignorare, come presentato nelle risposte qui sotto,

  • bin
  • obj
  • * .exe
  • * .pdb
  • * .suo
  • _ReSharper. *
  • * .user

concensus generale sembra essere che questi dovrebbero essere ignorati in base al progetto alla realizzazione del repository. Saranno quindi ignorati da tutti gli utenti che utilizzano il repository.

+0

Si noti che le regole relative a quali file non devono essere inseriti in Subversion si applicano anche a qualsiasi altro sistema di controllo del codice sorgente. –

risposta

7

Non proprio 'definitiva', ma ho sempre ignoro .suo e .user file e il bidone/e obj/directory

+0

Sai come andrei a fare questo in VisualSVN e se posso farlo come impostazione globale piuttosto che per progetto? –

+1

Scusa, uso TortoiseSVN e finisco per ignorarli manualmente con ogni nuovo progetto. – AgileJon

+0

Aggiungo questi file e directory all'elenco svn: ignore per ogni progetto. Devi solo impostarli una volta per progetto, quindi non è necessario impostarli "globalmente". Preferisco così. –

2

Il plug-in AnkhSVN per Visual Studio ha un elenco di file da ignorare automaticamente e impegna solo i file necessari.

Almeno è così che lo trovo. Ci sono voluti alcuni tentativi per impostare correttamente il repository ma con AnkhSVN si limita a commettere un sottoinsieme di file che TortoiseSVn vuole eseguire. Ad esempio, se ignora i file ricompilati su ogni Build.

5

Ecco la mia lista da ignorare da TortoiseSVN. VisualSVN richiede TortoiseSVN e utilizza le sue impostazioni.

bin obj *.exe *.pdb *.suo _ReSharper.* *.user 

Non ho eseguito alcun file indesiderato (o non richiesto alcun voluto) con questa impostazione.

3

Se si dispone di riferimenti ai servizi WCF, è sufficiente includere i file Reference.cs e Reference.svcmap per ogni riferimento al servizio.

+0

Includere anche app.config nella directory del progetto. (Il controllo del file .wsdl non è necessario, ma si consiglia di farlo anche nel caso in cui si desideri fare riferimento a una versione precedente per un servizio Web che è stato aggiornato.) –

0

Utilizzare VisualSVN per eseguire l'iniziale "Aggiungi file al repository" e ignora automaticamente ciò che non si desidera, ad esempio i propri file e le cartelle bin/obj.

1

A seconda della situazione, è possibile che si desideri mantenere anche Web.config fuori dal controllo di revisione. Diversi sviluppatori potrebbero richiedere diversi file di configurazione per un sito web.

Si consiglia di impostare una directory separata nel repository con un file di configurazione di riferimento per il sito Web e di ignorare * .config nella directory del progetto corrente.

1

Inoltre, per coprire i problemi di distinzione tra maiuscole e minuscole con "bin", ho dovuto aggiungere [Bb] al mio. Così ho:

[Bb]in obj *.exe *.pdb *.suo _ReSharper.* *.user 

Inoltre, questo link spiega come gestire esclude specifici del progetto e in modo che gli altri ottenere lo stesso comportamento di esclusione solo per lo stesso progetto al momento del check it out:

http://svnbook.red-bean.com/en/1.1/ch07s02.html

Ho usato la proprietà svn: ignore su una particolare directory per escludere un certo insieme di file che sono stati copiati lì (ma volevo ancora la directory stessa in svn).