2009-09-22 19 views
5

Prawdopodobnie jest to bardzo łatwe pytanie, ale nie znalazłem jeszcze sposobu usunięcia wszystkich plików obecnych w tym momencie w zewnętrznym repozytorium SVN.Usuń wszystkie pliki z repozytorium svn

mogę usunąć tylko jeden plik, używając:

svn delete -m "delete README" http://myrepo.com/svn/myrepo/README 

Ale teraz chcę usunąć wszystkie z nich. Pomyślałem o skrypcie, który dostaje listę wszystkich plików repozytorium, a następnie usuwa je jeden po drugim, ale jest to nużące. Czy znasz prostsze rozwiązanie?

Próbowałem również:

svn rm http://myrepo.com/svn/myrepo 
svn delete http://myrepo.com/svn/myrepo/* 

ale nic

Dzięki

+0

możliwe dupe: http://stackoverflow.com/questions/264323/svn-recursive- usunąć –

+0

to nie działa dla mnie, ponieważ nie mogę usunąć całego repozytorium. Interesuje mnie tylko jego zawartość, usunięcie wszystkich plików, które tam są – flow

Odpowiedz

25

Możesz zrobić płytkie zamówienie, a następnie usunąć wszystkie.

Przykład:

svn checkout --depth immediates http://myrepo.com/svn/myrepo myworking_copy 
cd myworking_copy 
svn rm * 
svn ci -m "Deleting all" 
+0

+1, proste i działa – orip

+1

cześć to rozwiązanie wydaje się naprawdę proste i dobre. Próbowałem, ale dostałem błędy, a następnie zaktualizowałem do ostatniej wersji SVN. Następnie rozpoznał opcję --depth, ale nadal mam ten błąd: http://subversion.tigris.org/faq.html#unrecognized-url-error Wygląda na to, że moja instalacja SVN nie była dobra. Gdy kończyło się mi czasy, spróbowałem TortoiseSVN (niestety tylko po wygraną $), przejrzałem repozytorium i usunąłem wszystkie pliki tam :) W każdym razie rozwiążę instalację svn później dzięki – flow

+0

To pytanie może się przydać usunięcie katalogu repo zawierającego wszystkie pliki. http://stackoverflow.com/questions/9317600/deleting-a-folder-from-svn-repository –

0

nie powiedziałeś jakiej platformie używasz.

Jeśli jesteś w systemie Windows i masz zainstalowane TortoiseSVN, możesz wyszukać wszystkie pliki w hierarchii folderów za pomocą eksploratora, zaznaczyć wszystkie pliki wynikowe i usunąć je za pomocą Żółwia.

Jeśli masz jakieś pochodne Uniksa (w tym OSX), prawdopodobnie możesz zrobić coś podobnego w swojej ulubionej powłoce.

1

Można svn rm sub-path w repo, ale nie sam repo. W przyszłości struktura prawdopodobnie będzie pasować lepiej.

Aby usunąć je z pewnym bash/zsh Magic:

REPO=http://myrepo.com/svn/myrepo && svn rm `svn ls $REPO | sed "s/^/$REPO\//"` 

który poszerzy się

svn rm http://myrepo.com/svn/myrepo/file_1 http://myrepo.com/svn/myrepo/file_2 ... 
Powiązane problemy