2011-11-08 18 views
20

Ho un grande progetto su un server live che vorrei commettere su un repository SVN. Ho aggiunto tutti i file e le directory al repository usando svn add.SVN Ignora - come ignorare il contenuto di una directory

Il problema è che esiste una struttura di cartelle che desidero eseguire il commit ma senza il suo contenuto. Il nome della cartella è:

/home/myproject/media/ 

Esso contiene varie cartelle come immagini, notizie, annunci casa-immagini, ecc vorrei commettere queste cartelle, ma non il loro contenuto. Ho provato a fare il seguente:

cd /home/myproject/media/ 
svn propedit svn:ignore ./homeimages/ 
{{The text editor comes up}} 
I entered * and saved 

ma quando lo faccio

svn stat

i file sotto homeimages sono ancora elencati nel repository. Come posso risolvere questo problema?

risposta

15

Una volta aggiunto a subversion, la proprietà svn: ignore non si applica più. Dovrai prima fare uno svn remove sul contenuto della tua cartella multimediale. Una volta fatto, SVN dovrebbe ignorare i file come richiesto.

+0

ok ho fatto una svn ripristinare la cartella dei media. Ma quando provo a impostare la svn ignora propety dice che la directory non è una copia funzionante: S –

+2

Prova a fare un 'svn add -N/home/myproject/media'. Il parametro -N indica a subversion di non ricorrere all'albero. Questo dovrebbe aggiungere solo la directory dei media stessa e nessuno dei suoi contenuti. È quindi possibile aggiungere la proprietà svn: ignore. –

+1

Se non si desidera aggiungere la directory media, quindi 'svn propset svn: ignore/home/myproject' e specificare' media' nell'editor. – Klox

0

È possibile ripristinare i file e lasciare solo cartelle aggiunte.

svn revert --depth files 

Si dovrà farlo in ogni sottocartella della /home/myproject/media/.

1

Uso il client SVN (Tortoise SVN) e ha la funzionalità ignore-on-commit. Prova a usarlo.

+1

Sei sicuro che funzioni per Linux? –

+0

Tortise SVN è un client SVN di Windows. –

Problemi correlati