1. 程式人生 > >SVN伺服器端的版本回退

SVN伺服器端的版本回退

由於誤操作,不小心將錯誤的程式碼提交到了svn上,於是想在伺服器上刪除本次提交,經過嘗試,發現進行以下步驟的操作即可徹底刪除本次提交:

1.  首先找到本次提交後生成的版本號,例如為r566


2.登入到svn伺服器上,進入到專案的svn目錄.

3.進入db目錄,刪除此目錄下的rep-cache.db。並修改此目錄下的current檔案,將其修改為上一個版本,例如565.

4.刪除db/revs/0/目錄下的566檔案。

5.刪除db/revprops/0/目錄下的566檔案。

至此,伺服器端已經回退到r565版本,此時可以將本地下載到的程式碼刪除,重新從svn伺服器上下載一份程式碼,然後基於此程式碼繼續修改提交。


如果在windows下使用TortoiseSVN,還需要刪除本地的快取,不然會出現再次提交後,其日誌顯示出現錯誤的情況,刪除方法為點選TortoiseSVN的settings,在選擇"Saved Data",點選Clear清除Log message即可。

 

操作之後再登入SVN看到的結果:



說明:這種刪除SVN版本庫中版本的方式也適用於徹底刪除SVN中不用的特定版本,清理出SVN版本庫空間,加快SVN版本庫的訪問速度。

 如果再結合SVN的dump,load等版本庫的備份操作將會達到更好的效果。

原文地址http://https://blog.csdn.net/netwalk/article/details/14122419