svn重新定位后UUID客户端和服务器不一致的问题
最近在使用TortoiseSVN的時(shí)候,因?yàn)閂isualSVN服務(wù)器的倉庫地址發(fā)生了變化,需要對本地的倉庫進(jìn)行一下重定位(relocate),但是在進(jìn)行這個(gè)操作的時(shí)候報(bào)了一個(gè)【svn The repository at svnxxxxx has uuid XXXX, but the WC has XXXX】這樣的錯(cuò)誤,如果是中文版TortoiseSVN會(huì)提示如下信息:
版本庫 "https://RDServer:8443/svn/finance/" 的 uuid是 "3163c7ff-81f2-6645-ae17-932cea02b3d1",但工作副本的是"d0d64f1f-4619-2248-8bce-687ab998f712",如上圖所示
注:以上的UUID在服務(wù)端是可以查看并直接復(fù)制的
打開VisualSVN Server Manager頁面,在中找到相應(yīng)的repository,右鍵查看【Propertity】,然后在Details標(biāo)簽頁中可以看到這個(gè)倉庫的uuid了,這里的uuid是可以直接復(fù)制的。
出現(xiàn)這個(gè)問題的原因就是SVN服務(wù)器上倉庫的uuid和我們本地倉庫中的uuid不一致引起的。uuid是SVN服務(wù)器在創(chuàng)建倉庫時(shí)自動(dòng)生成的一個(gè)隨機(jī)數(shù),通過這個(gè)隨機(jī)數(shù)用來判斷服務(wù)器和客戶端的倉庫是否一致,如果不一致,就會(huì)引起沖突。
需要用到svnadmin命令:(位于 SVN安裝目錄下面的bin目錄)
注:這個(gè)命令需要在SVN服務(wù)器上執(zhí)行,該命令使用cmd命令行窗口使用。
1.找到svn服務(wù)器,然后找到VisualSVN Server的安裝目錄下的bin文件夾,將其路徑拷貝
比如C:\Program Files\VisualSVN Server\bin
2.打開cmd命令,輸入cd 剛才拷貝的bin文件夾的路徑,回車,然后就可以使用svnadmin命令了。
svnadmin setuuid <repos_path> <uuid>
?注:<repos_path> 是你的SVN中這個(gè)項(xiàng)目所在的路徑,比如C:\svn\Repositories\xxxx?<uuid>就是你想要設(shè)置的新的UUID
你可以使用它來設(shè)置UUID。
使用svnadmin setuuid命令更新Repository的uuid.
解決辦法如下:
1.首先查看項(xiàng)目的所有者的uuid
svnlook uuid??https://RDServer:8443/svn/finance/
42b86956-73d9-2945-ba87-0546d71898f5
2.更新項(xiàng)目的uuid
svnadmin setuuid? ?https://RDServer:8443/svn/finance/?7aed1349-fe9f-9245-a4a0-02dba53eb2d3
3.查看一下更新uuid的結(jié)果
svnlook uuid? https://RDServer:8443/svn/finance/
7aed1349-fe9f-9245-a4a0-02dba53eb2d3
總結(jié)
以上是生活随笔為你收集整理的svn重新定位后UUID客户端和服务器不一致的问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SVN服务器更换IP地址,客户端如何重新
- 下一篇: VisualSVN服务端的安装和卸载