學(xué)習(xí)筆記 如何使用svnsync命令對SVN庫進(jìn)行備份
本節(jié)向大家介紹一下如何使用svnsync命令對SVN庫進(jìn)行備份,使用svnsync備份很簡單,只有四個(gè)步驟,在這里和大家簡單介紹一下,希望通過本節(jié)的學(xué)習(xí)大家能夠掌握使用svnsync命令對SVN庫進(jìn)行備份的方法。
下面是具體的備份步驟:
一、在備份機(jī)上創(chuàng)建一個(gè)空庫:svnadmincreateSMP
二、更改該庫的鉤子腳本pre-revprop-change(因?yàn)閟vnsync要改這個(gè)庫的屬性,也就是要將源庫的屬性備份到這個(gè)庫,所以要啟用這個(gè)腳本):
cdSMP/hooks;
cppre-revprop-change.tmplpre-revprop-change;
chmod755pre-revprop-change;
vipre-revprop-change;
將該腳本后面的三句注釋掉,或者干脆將它弄成一個(gè)空文件。
三、初始化,此時(shí)還沒有備份任何數(shù)據(jù):
svnsyncinitfile:///home/backup/svn/svnsync/SMP/http://svntest.subversion.com/repos/SMP
語法是:svnsyncinit{你剛創(chuàng)建的庫url}{源庫url}
注意本地url是三個(gè)斜杠的:///
四、開始備份SVN庫:
svnsyncsyncfile:///home/backup/svn/svnsync/SMP
這是就一個(gè)個(gè)版本進(jìn)行備份了。我們來看一下SVN庫備份過程中可能出現(xiàn)的錯(cuò)誤。
附錄:
可能的報(bào)錯(cuò)一:
- Failedtogetlockondestinationrepos,currentlyheldby'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'
- Failedtogetlockondestinationrepos,currentlyheldby'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'
- Failedtogetlockondestinationrepos,currentlyheldby'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'
- Failedtogetlockondestinationrepos,currentlyheldby'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'
- Failedtogetlockondestinationrepos,currentlyheldby'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'
- Failedtogetlockondestinationrepos,currentlyheldby'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'
- Failedtogetlockondestinationrepos,currentlyheldby'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'
- Failedtogetlockondestinationrepos,currentlyheldby'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'
- Failedtogetlockondestinationrepos,currentlyheldby'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'
- Failedtogetlockondestinationrepos,currentlyheldby'bug1.corp.scmbbs.com:0c424c20-2e3b-0410-bd34-7fdd53c25d02'
- svnsync:Couldn'tgetlockondestinationreposafter10attempts
這個(gè)時(shí)候可能屬性被鎖了,刪掉屬性:svnpropdelsvn:sync-lock--revprop-r0file:///home/backup/svn/svnsync/SMP
刪除成功后,再試一遍基本就可以了。如果反復(fù)操作都是同樣錯(cuò)誤的話,有可能是你的svn安裝的有問題,重新安裝一遍就好了,俺就是這樣。
可能報(bào)錯(cuò)二、
svnsync:REPORTrequestfailedon'http://svn1.subversion.com/repos/Relevance'
svnsync:Therequestedreportisunknown.這是因?yàn)槟阍磶斓陌姹咎土耍瑂vnsync所需要的函數(shù)Report是svn1.4后加入的。沒辦法,對你的SVN庫進(jìn)行升級后才能備份。
【編輯推薦】