此文將講解刪除已提交到SVN服務器上的版本號。官方未來可能添加svnadmin obliterate命令以支持此特性。目前比較推薦的方法是用svnadmin 導出,再過濾掉不想要的版本,再導入。這里提供另一種解決方法(風險未知)。
模擬實驗環(huán)境
實驗環(huán)境
測試倉庫:https://10.10.0.1/svn/mytest
模擬刪除5、6版本號。
模擬環(huán)境
目前版本號為4
現(xiàn)在模擬新提交到版本號6
刪除版本號
1、停止SVN服務
2、刪除版本信息文件
登陸到SVN服務器,進入倉庫所在目錄
刪除mytest\db\rep-cache.db文件
刪除mytest\db\revprops\0目錄下5、6兩個文件
刪除mytest\db\revs\0目錄下5、6兩個文件
3、修改當前版本記錄文件
修改mytest\db\current文件,將6該為4。至此,版本號已回退至4
4、啟動SVN服務
驗證
1、清理TortoiseSVN緩存
如果在windows下使用TortoiseSVN,請清理TortoiseSVN的緩存,否則可能出現(xiàn)日志信息錯亂問題
2、查看當前版本信息
此時看到后面提交的版本5、6已經(jīng)被刪除
3、再次提交版本驗證
再次提交,完全沒有影響,至此完成。