Jakie polecenie mogę wpisać w terminalu, aby móc usunąć wszystkie .svn
foldery w folderze (i ze wszystkich podkatalogów), ale niczego innego nie usunąć?
macos
svn
terminal.app
Mikey
źródło
źródło
svn export path/to/repo path/to/export/to
zamiast tego ...svn export
że nie kopiuje plików, które nie są częścią svn. Na przykład chciałem to zrobić dla aplikacji na iOS, która korzysta z Cocoa Pods, w których nie zatwierdzamy folderu Pods. Zostało to następnie pominięte w danych wyjściowych. W końcu użyłem czegoś podobnego do odpowiedzi Richa na to, czego chciałem.Odpowiedzi:
rm -rf (thing found from find)
. {} jest symbolem zastępczym dla znalezionej jednostkiźródło
find
ma-delete
to nie będzie usuwać niepuste katalogi. Takie podejście jest czystsze niż np. Rozpoczynanie dopasowywania części całej ścieżki plików.-exec rm -rf {} \;
pierwszego, aby upewnić się, że tylko znajdzie to, czego chcesz. Nigdy nie miałem problemu z przypadkowym usunięciem niewłaściwej rzeczy, ponieważ zawsze sprawdzam najpierw.-exec rm -ri {} \;
-exec rm -rf {} +
jest prawdopodobnie wiele razy szybszy, ponieważ nie musi uruchamiać zbyt wielurm
instancji. Zamiast tego pakuje maksymalną liczbę argumentów (katalogi do usunięcia w tym przypadku) w jednym wywołaniu. Jest to możliwe, ponieważrm
akceptuje wiele argumentów.