轉移SVN 倉庫後,使用TortoiseSVN 重定位(relocate)報錯 解決方法

最近由於使用私人碼雲存在大小限制,就將其倉庫轉移企業倉庫後,使用TortoiseSVN 重定位(relocate)報錯

錯誤提示:【svn The repository at svnxxxxx has uuid XXXX, but the WC has XXXX】

 

出現這個問題的原因就是SVN服務器上倉庫的uuid和我們本地倉庫中的uuid不一致引起的。uuid是SVN服務器在創建倉庫時自動生成的一個隨機數,通過這個隨機數用來判斷服務器和客戶端的倉庫是否一致,如果不一致,就會引起衝突。

出現這種問題,我們要使服務端和客戶端的uuid保持一致,很顯然,修改服務端的uuid是不可以的,最好是修改我們本地倉庫的uuid。要修改uuid,首先得知道服務端的uuid是什麼,雖然報錯的時候對話框中顯示出了服務端的uuid是什麼,但是那個不能複製。

可以下載新倉庫到本地。在本地倉庫的.svn文件夾下面有一個wc.db文件,這個文件是個sqlite數據庫,裏面存儲着倉庫的一些版本控制信息。我們用sqlite數據庫查看軟件打開這個文件後,可以在REPOSITORY表中找到uuid字段,裏面存儲的就是本地倉庫的uuid值,我們可以在數據庫裏直接修改這個值和服務端的uuid一致。

將本地倉庫的uuid改成和服務端一致以後,再次執行relocate操作,就沒有問題了。

 

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