Eliminare tutti i file ignorati all'interno di una cassa di Subversion
-
30-09-2019 - |
Domanda
Come posso eliminare tutti i file che vengono ignorati all'interno di una cassa di Subversion? Effettivamente per riportarlo al l'equivalente di un checkout incontaminata.
Soluzione
Io uso questo script quando voglio pulire una copia di lavoro. Rimuove tutti i file sconosciuti e ignorati.
svn status --no-ignore | awk '$1=="?"||$1=="I" { print $2 }' | xargs -i rm -rf {}
Altri suggerimenti
Se TortoiseSVN , è possibile Check for modifications
, Show ignored files
, fare clic destro e cancellare.
karoberts' soluzione non funziona su Mac OS X (Snow Leopard). Nemmeno un altro comando che ho trovato su un blog
ho
xargs: opzione illegale - i
e
xargs: opzione illegale - d
rispettivamente.
Questo funziona su Mac (adattato da karoberts'):
svn status | awk '$1=="?"||$1=="I" { print $2 }' | xargs rm -rf
Si potrebbe voler prima annullare lo stato di tali file ignora (rif Come faccio a non ignorare più un file in TortoiseSVN? per i dettagli) e poi è possibile eliminare e impegnarsi di nuovo le modifiche dal methinks dello spazio di lavoro.
Ecco un altro modo di farlo.
svn status --no-ignore | grep "^[\?I]" | sed 's%^........%%' | xargs -d "\\n" rm -rv