mit folgendem befehl kann man rekursiv .svn ordner löschen:
rm -rf `find . -type d -name .svn`
mit folgendem befehl kann man rekursiv .svn ordner löschen:
rm -rf `find . -type d -name .svn`
Findet alle Dateien die mit ._ anfangen, ignoriert die .svn eigenen kopien und markiert diese zum löschen via svn.
find . -name '._*' -type f | grep -v '.svn/' | xargs svn rm
protected function rGlob($pattern = '*', $flags = 0, $path = false) { if (!$path) { $path = dirname($pattern).DIRECTORY_SEPARATOR; } $pattern = basename($pattern); $paths = glob($path.'*', GLOB_MARK|GLOB_ONLYDIR|GLOB_NOSORT); $files = glob($path.$pattern, $flags); foreach ($paths as $path) { $files = array_merge($files, $this->rGlob($pattern, $flags, $path)); } return $files; }
Folgender Kommandozeilen Befehl löscht alle .svn Verzeichnisse in einem Ordner.
Im Detail sucht das Kommando find
im aktuellen Ordner (.) rekursiv
nach Verzeichnissen (-type d)
mit dem Namen .svn (-name .svn)
und piped (|) diese Liste
nach xargs,
welches dann an erster Stelle (-0) der Liste
mit der Löschoperation (rm -rf) beginnt.
find . -type d -name .svn -print0 | xargs -0 rm -rf