- 相關(guān)推薦
SVN(subversion)早期版本的刪除
導(dǎo)語(yǔ):PHP是一種通用開源腳本語(yǔ)言。語(yǔ)法吸收了C語(yǔ)言、Java和Perl的特點(diǎn),利于學(xué)習(xí),使用廣泛,主要適用于Web開發(fā)領(lǐng)域。下面我們來(lái)看看SVN(subversion)早期版本的刪除去具體怎么操作,希望對(duì)大家有所幫助。
具體作業(yè)過(guò)程如下:
準(zhǔn)備工作
停止apache服務(wù)器,修改版本庫(kù)目錄路權(quán)限為root的方式,阻止所有的用戶使用該版本庫(kù)。重啟apache,這樣可保證其他版本庫(kù)的用戶繼續(xù)使用。
備份原有版本庫(kù)。
版本庫(kù)全備份可以采用svnadmin dump和svnadmin hotcopy兩種方法。在整個(gè)過(guò)程中兩種方法都會(huì)用到。首先作為版本庫(kù)全備份,以防將來(lái)出現(xiàn)作業(yè)錯(cuò)誤時(shí)可以立刻恢復(fù)原有版本庫(kù)的操作,建議使用svnadmin hotcopy。一方面這樣的備份速度比較快,另一方面?zhèn)浞莸慕Y(jié)果就是一個(gè)可以立刻使用的版本庫(kù),在需要恢復(fù)的時(shí)候直接拷貝回去就行了。具體命令如下:
svnadmin hotcopy --clean-logs /path/to/repo ./hotcopy >hotcopy.log 2>hotcopy_err.log &
備份的結(jié)果就是一個(gè)目錄,尺寸基本和原版本庫(kù)相同,47G。
dump版本庫(kù)需要保留的版本。
通過(guò)svnlook youngest /path/to/repo命令可以看到版本庫(kù)最后的版本是多少。我要作業(yè)的版本庫(kù)是14079。經(jīng)過(guò)跟對(duì)方公司協(xié)商,決定保留10000到14079之間的版本。因此需要從版本庫(kù)把10000以后的版本dump出來(lái)。具體命令如下
svnadmin dump /path/to/repo -r 10000:14079 > repo_dump_10000-14079.dmp 2>repo_dump_10000-14079.log &
dump出來(lái)的文件大約34G。
查看一下日志文件,確定所需要的版本都被正確的dump下來(lái)了。
重建版本庫(kù)
rm -rf /path/to/repo
svnadmin create /path/to/repo
注意這里面沒(méi)有使用 --fs-type bdb參數(shù),因此創(chuàng)建出來(lái)的版本庫(kù)是FSFS后端的。后面還會(huì)繼續(xù)解釋為什么這么做。
重新導(dǎo)入新版本
svnadmin load /path/to/repo < repo_dump_10000-14079.dmp > repo_load.log 2>repo_load_err.log &
檢查一下日志文件,看看load是否成功。用svnlook命令看看load以后版本庫(kù)的最新版本。
修改版本庫(kù)權(quán)限
chown -R apache:apache /path/to/repo
到此為止版本庫(kù)的歷史版本刪除工作就結(jié)束了。需要注意的是,新建出來(lái)的版本庫(kù)的最新版本應(yīng)該是4080。另外,經(jīng)過(guò)觀察,新創(chuàng)建出來(lái)的版本尺寸只有2.7G。這個(gè)結(jié)果曾經(jīng)一度讓我懷疑load沒(méi)有成功。但是事實(shí)上確實(shí)如此。需要說(shuō)明的是,原來(lái)那個(gè)占了47G的版本庫(kù)就是BDB格式的。我又試著創(chuàng)建了一個(gè)BDB后端的版本庫(kù),用同樣的方式把dump文件導(dǎo)進(jìn)去,結(jié)果版本庫(kù)的尺寸接近30G。而且導(dǎo)入的速度來(lái)看也明顯比向FSFS后端版本庫(kù)導(dǎo)入要慢很多。大概多了一個(gè)多小時(shí)的時(shí)間?梢(jiàn)BDB后端和FSFS后端版本庫(kù)在某種情況下的尺寸差距驚人的大。手冊(cè)是雖然也說(shuō)了FSFS會(huì)比BDB小一些,但是絕對(duì)沒(méi)想到會(huì)小那么多。subversion現(xiàn)在主推FSFS格式是有道理的。但是我總覺(jué)得畢竟BDB歷史更悠久一些,也更穩(wěn)定一些。所以在今后硬盤空間不緊張的前提下,我還是傾向于使用BDB后端格式。
【SVN(subversion)早期版本的刪除】相關(guān)文章:
怎么刪除Word中無(wú)法刪除的線條09-07
word批注怎么刪除09-07
怎么刪除word的直線10-17
php怎么刪除cookie08-12
Java的不同版本10-28
wps文字如何刪除頁(yè)10-02
Word怎么批量刪除圖片10-24
怎樣批量刪除DreamWeaver鏈接08-13