去掉文件下所有的.svn

一、先把原有的帶.svn控制的工程備份一份,然後再拷貝一份到另一個目錄,比如:K:\chinasofti\XXX項目
二、建一個txt文件夾 把下面的 代碼拷過去,把格式改成 .bat 
FOR /r  K:\chinasofti\XXX項目  %%a IN (.svn) DO rmdir /s/q %%a 
三、雙擊 這個 .bat格式的文件。這樣就可以把所有的 .svn去掉了。


第二種方法如下:

添加註冊表(親自動手測試過) 
可以將“快速刪除SVN版本信息”命名增加到資源管理器的右鍵上,這樣,鼠標點兩下就能把選中目錄下的所有.svn目錄幹掉了。 

代碼爲: 
Windows Registry Editor Version 5.00 

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN] 
@="快速刪除SVN版本信息" 

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN\command] 
@="cmd.exe /c D:\工具\批處理文件刪除SVN版本信息.bat" 
將這段代碼保存爲一個.reg文件,雙擊確認導入註冊表中不完整,後來自己手工添加。注意:文件“批處理文件刪除SVN版本信息.bat”不能放 在有空格的文件夾下,確認刪除時請看一下當前目錄不要刪除不該刪的目錄下的SVN版本信息。不知道怎麼改進“cmd.exe /c D:\工具\批處理文件刪除SVN版本信息.bat”。 

批處理文件刪除SVN版本信息.bat文件內容如下: 
@echo off 
echo *********************************************************** 
echo 清除SVN版本信 息                                                                                               
echo *********************************************************** 
:start 
::啓動過程,切換目錄 
:set pwd=%cd% 
:cd %1 
echo 工作目錄是:& chdir 
:input 
::獲取輸入,根據輸入進行處理 
set source=: 
set /p source=確定要清楚當前目錄下的.svn信息嗎?[Y/N/Q] 
set "source=%source:"=%" 
if "%source%"=="y" goto clean 
if "%source%"=="Y" goto clean 
if "%source%"=="n" goto noclean 
if "%source%"=="N" goto noclean 
if "%source%"=="q" goto end 
if "%source%"=="Q" goto end 
goto input 
:clean 
::主處理過程,執行清理工作 
@echo on 
@for /d /r %%c in (.svn) do @if exist %%c ( rd /s /q %%c & echo    刪除目錄%%c) 
@echo off 
echo "當前目錄下的svn信息已清除" 
goto end 
:noclean 
::分支過程,取消清理工作 
echo "svn信息清楚操作已取消" 
goto end 
:end 
::退出程序 
cd "%pwd%" 
pause

注:最後一種方法,如果出現錯誤,就打開註冊表,找到對應的項,吧“cmd.exe /c D:\工具\批處理文件刪除SVN版本信息.bat “直接寫入註冊表中即可使用

我只用了最後一種方法:

報文件沒有關聯錯誤,找到這個註冊表項:[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN\command] 
寫入:“cmd.exe /c D:\工具\批處理文件刪除SVN版本信息.bat “,注意路徑

還有一個要注意的:在使用的時候,不要在要清除的文件夾上右擊,在要清除的文件夾裏面的子文件夾上右擊--》快速刪除svn版本信息


 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章