2011-10-18 16 views
5

L'ignore globale predefinito per Subversion fa un buon lavoro nel mantenere gli artefatti di build fuori dal controllo di versione. Cosa succede se ho bisogno di distribuire una directory di codice compilato per le mie cose da costruire?Posso sovrascrivere svn: ignora per le singole directory?

Non voglio per ritirare il mio uscita (a, diciamo, /target), e voglio continuare a ignorare tutto codice compilato per la maggior parte dei miei altri progetti, ma solo uno directory (ad esempio , /input) deve sempre tracciare i file con estensione .a.

Esiste una proprietà che è possibile impostare nella directory /input che eseguirà il file svn add prelevando nuovi file .a, senza alterare la proprietà di ignoranza globale?

risposta

6

L'impostazione svn:ignore è una proprietà per directory. Si applica a una determinata directory e aggiunge a anziché sostituisce l'impostazione global-ignores. Vedi Ignoring Unversioned Items nel libro SVN.

direi avete due opzioni praticabili:

  1. Non includere *.a nell'impostazione global-ignores, ma solo metterlo nella proprietà svn:ignore sulle directory in cui tali file tendono a comparire, come ad esempio /target .
  2. Conservare *.a nell'impostazione global-ignores e chiamare manualmente svn add su ciascuno dei file .a che si desidera tracciare. Una volta che sono tracciati da SVN, l'impostazione ignora non verrà più applicata a loro.
+2

Giusto, ma qual è la sintassi per dire * non * ignorare (questo modello)? Voglio dire, se è già ignorato, come posso "ignorarlo"? – Coderer

+0

rimuovilo dalla proprietà svn: ignore. svn propedit svn: ignore –

+0

http://svnbook.red-bean.com/en/1.1/ch07s02.html#id3022585 dice "I pattern sono rigorosamente per quella directory - non portano ricorsivamente nelle sottodirectory". –

Problemi correlati