Subversion: Arbeitskopie von .svn Verzeichnissen befreien
Von Zeit zu Zeit werde ich darauf angesprochen, wie man eine Arbeitskopie „Ent-Subversionen“ kann. Zumeist, um den Inhalt dann wieder einem anderen Projekt oder einem anderen Branch oder ähnlichem hinzuzufügen.
Die Antwort: Lösche alle .svn Unterverzeichnisse. Unter Linux geht das ja noch sehr angenehm mit einem
find . -type d -name ".svn" -print0 | xargs -0 rm -rdf
Unter Windows ists es etwas unbequemer – aber zum Glück hat da ja schonmal jemand drüber nachgedacht und einen Kontextmenüeintrag ersonnen:
Folgende Einträge müssen als .reg File abgespeichert und durch Doppelklick in die Registry importiert werden.
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN]
@="Delete SVN Folders"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN\command]
@="cmd.exe /c \"TITLE Removing SVN Folders in %1 && COLOR 9A && FOR /r \"%1\" %%f IN (.svn) DO RD /s /q \"%%f\" \""
(danke an das BlaBlubbBlog)
Weiss man sowas übrigens schon bevor man lokale Änderungen gemacht hat, genügt auch hier die Export-Funktion von SVN. Dann wird einfach der gewählte Zweig auf SVN ohne Informationen zur Versionierung exportiert.
Viel Spaß bei der weiteren Arbeit mit Subversion
Am 19. Juni 2008 um 20:37 Uhr
Man kann auch einfach $ svn export benutzen. Ich glaube bei TortoiseSVN gibts da auch einen entsprechenden Befehl für.
Am 20. Juni 2008 um 10:15 Uhr
Stimmt Hab ich im letzten Satz auch geschrieben
Am 25. Juni 2008 um 12:08 Uhr
Überlesen. Aber ich glaube, wenn da lokale Änderungen sind, werden die übernommen. Kommt halt drauf an, wovon man den Export macht: WC oder URL.