公司服務(wù)器被前面幾任開發(fā)搞得磁盤只剩下幾百M(fèi)了,服務(wù)器里面東西亂七八糟,公司領(lǐng)導(dǎo)不太愿意直接擴(kuò)容磁盤,而且關(guān)鍵問題是:開發(fā)環(huán)境、測(cè)試環(huán)境 、生產(chǎn)環(huán)境,共用一臺(tái)服務(wù)器。??,只能說前任過得太苦逼了(哈哈,話中有話,懂就好)進(jìn)入正題:
新服務(wù)器svn環(huán)境安裝
1、在舊服務(wù)器中,使用命令svn --version查看svn版本,例如:
(base) [root@api svn]# svn --version
svn, version 1.7.14 (r1542130)
compiled Apr 11 2018, 02:40:28
Copyright (C) 2013 The Apache Software Foundation.
This software consists of contributions made by many people; see the NOTICE
file for more information.
Subversion is open source software, see http://subversion.apache.org/
The following repository access (RA) modules are available:
* ra_neon : Module for accessing a repository via WebDAV protocol using Neon.
- handles 'http' scheme
- handles 'https' scheme
* ra_svn : Module for accessing a repository using the svn network protocol.
- with Cyrus SASL authentication
- handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
- handles 'file' scheme
2、根據(jù)第一步得到的svn版本來安裝(根據(jù)自己的版本號(hào),自行百度),我這邊是直接執(zhí)行yum安裝,剛好是相同版本
yum -y install subversion
接下來,檢查SVN 是否安裝成功。
svn --version #出現(xiàn)version,表示安裝成功
遷移步驟
建議遷移的時(shí)候,將所有源庫SVN所有賬號(hào)的權(quán)限改成只讀,或者停掉SVN服務(wù)器
SVN的遷移有兩種方式:
1) dump出源機(jī)器SVN的代碼庫,然后load到新服務(wù)器上去。
2) 使用 svnsync 直接同步源機(jī)器代碼庫。
比較這兩種遷移的方式,我比較推薦第二種,使用svnsync進(jìn)行遷移。第一種使用dump出源機(jī)器代碼庫,dump完,看了一下dump文件,幾十個(gè)G,太大了
下面直接記錄下第二種方式遷移的步驟
1、新服務(wù)器:
svnadmin create /data/svn/www # 創(chuàng)建版本庫www
cd /data/svn/www
cp hooks/pre-revprop-change.tmpl hooks/pre-revprop-change
chmod 777 hooks/pre-revprop-change
vim hooks/pre-revprop-change # 修改最后一行代碼,如下
exit 0
2、具體遷移命令
svnsync init file:///data/svn/www svn://舊服務(wù)器svn地追/www # 初始化
svnsync sync file:///data/svn/www # 開始同步數(shù)據(jù)
PS : 這塊需要輸入密碼驗(yàn)證,新服務(wù)器的密碼 源服務(wù)器SVN的賬號(hào)密碼,此賬號(hào)應(yīng)該有倉庫所有代碼的讀取權(quán)限

3、等待遷移完成,進(jìn)行版本校驗(yàn)
svnadmin verify /data/svn/www
沒提示錯(cuò)誤,代表遷移成功
4、關(guān)鍵步驟
復(fù)制舊服務(wù)器上的svn倉庫uuid到新服務(wù)器對(duì)應(yīng)的svn倉庫,這樣子svn客戶端才不會(huì)報(bào)錯(cuò)
# 舊服務(wù)器
(base) [root@api svn]# cat www/db/uuid
9d0c555b-2354-404e-b7a9-d3e529fcf44f
# 新服務(wù)器
vim /data/svn/www/db/uuid
# 用舊服務(wù)器的uuid替換這里的uuid
現(xiàn)在可以去svn客戶端測(cè)試了
測(cè)試
關(guān)鍵步驟,將svn工作副本切換指向新服務(wù)器,核心命令是
svn relocate
不同系統(tǒng)不同客戶端,操作大同小異,大家自行操作即可
最后可以測(cè)試一下提交svn能不能成功了
參考:https://blog.csdn.net/liangcl_2018/article/details/79745688