刪除SVN三種方法delSvn(windows+linux)
阿新 • • 發佈:2019-02-01
一、在linux下
刪除這些目錄是很簡單的,命令如下
find . -type d -name ".svn"|xargs rm -rf
或者
find . -type d -iname ".svn" -exec rm -rf {} \;
二、在windows下用以下法子:
1、在專案平級的目錄,執行dos命令:
xcopy project_dir project_dir_1 /s /i
2、或者在專案根目錄執行以下dos命令
for /r . %%a in (.) do @if exist "%%a\.svn" rd /s /q "%%a\.svn"
其實第二種方法可以用來幹很多事的,比如把程式碼中的.svn替換為任意其他檔名並在硬碟根目錄下執行,就可以從硬碟上刪除所有的這個檔案啦。
3、添加註冊表(親自動手測試過)
可以將“快速刪除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 工作目錄是:chr(38) 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 chr(38) 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版本資訊
今天看了Jon Galloway的一個登錄檔指令碼,十分方便,分享如下:
建立一個文字檔案,取名為kill-svn-folders.reg(副檔名由txt改為reg),內容如下:
複製程式碼程式碼如下:
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 chr(38)chr(38) COLOR 9A chr(38)chr(38) FOR /r \"%1\" %%f IN (.svn) DO RD /s /q \"%%f\" \""
儲存之後,雙擊這個reg檔案。成功後,在每一個資料夾上點選右鍵都會有一個“Delete SVN Folders”的選項,點選之後,既可以刪除這個檔案下下面所有的.svn檔案了
刪除這些目錄是很簡單的,命令如下
find . -type d -name ".svn"|xargs rm -rf
或者
find . -type d -iname ".svn" -exec rm -rf {} \;
二、在windows下用以下法子:
1、在專案平級的目錄,執行dos命令:
xcopy project_dir project_dir_1 /s /i
2、或者在專案根目錄執行以下dos命令
for /r . %%a in (.) do @if exist "%%a\.svn" rd /s /q "%%a\.svn"
其實第二種方法可以用來幹很多事的,比如把程式碼中的.svn替換為任意其他檔名並在硬碟根目錄下執行,就可以從硬碟上刪除所有的這個檔案啦。
3、添加註冊表(親自動手測試過)
可以將“快速刪除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 工作目錄是:chr(38) 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 chr(38) echo 刪除目錄%%c)
@echo off
echo "當前目錄下的svn資訊已清除"
goto end
:noclean
::分支過程,取消清理工作
echo "svn資訊清楚操作已取消"
goto end
:end
::退出程式
cd "%pwd%"
pause
注:最後一種方法,如果出現錯誤,就開啟登錄檔,找到對應的項,吧“cmd.exe /c D:\工具\批處理檔案刪除SVN版本資訊.bat “直接寫入登錄檔中即可使用
我只用了最後一種方法:
寫入:“cmd.exe /c D:\工具\批處理檔案刪除SVN版本資訊.bat “,注意路徑
還有一個要注意的:在使用的時候,不要在要清除的資料夾上右擊,在要清除的資料夾裡面的子資料夾上右擊--》快速刪除svn版本資訊
今天看了Jon Galloway的一個登錄檔指令碼,十分方便,分享如下:
建立一個文字檔案,取名為kill-svn-folders.reg(副檔名由txt改為reg),內容如下:
複製程式碼程式碼如下:
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 chr(38)chr(38) COLOR 9A chr(38)chr(38) FOR /r \"%1\" %%f IN (.svn) DO RD /s /q \"%%f\" \""
儲存之後,雙擊這個reg檔案。成功後,在每一個資料夾上點選右鍵都會有一個“Delete SVN Folders”的選項,點選之後,既可以刪除這個檔案下下面所有的.svn檔案了