有時候想把某個加入svn版本控制的工程脫離出來,這就需要删除SVN工作目錄下的.svn目錄,windows 平台下常用的作法是用系統(Windows)自帶的搜尋功能,搜尋出所有.svn目錄(需要在“其他進階選項”中選需要删除SVN工作目錄下的.svn目錄,而SVN Clinet 本身是不帶清除.svn檔案的指令的。是以隻能自己寫腳本來遞歸删除.svn檔案夾:
1、windows 平台下
常用的作法是用系統(Windows)自帶的搜尋功能,搜尋出所有.svn目錄(需要在“其他進階選項”中選中“搜尋隐藏的檔案和檔案夾”),然後全選删除。這當然不是高效的作法,誰能忍受一遍又一遍重複這種純體力的勞動?
Jon Galloway 提供了一段系統資料庫代碼,可以将”Delete SVN Folders”命名增加到資料總管的右鍵上,這樣,滑鼠點兩下就能把選中目錄下的所有.svn目錄幹掉了。Works just great!
代碼為:
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\" \""
将這段代碼儲存為一個.reg檔案,輕按兩下确認導入系統資料庫即可。
2、Linux平台下:
find . -type d -name ".svn"|xargs rm -rf