More  

小編的世界 優質文選 主機

在ubuntu上安裝svn版本控制服務器


2021年11月17日 - 主機小編  
   

碼農老趙09:21

寫過代碼的人都知道版本控制系統的重要性。它可以記錄每次修改了哪些內容、修改的原因;掌握團隊開發的進度;查看整個項目的開發歷史;恢複到某個穩定的版本。

常用的版本控制系統有svn、git等,我們今天先講解svn服務器的安裝。

本文測試環境:Ubuntu 20.04.3 LTS,subversion version 1.13.0

首先用root用戶登錄ubuntu操作系統,用命令apt install subversion -y安裝subversion。

用命令svnserve --version檢查是否安裝成功

新建目錄/svndata,用來存放svn項目。進入svndata目錄,用命令創建一個svn項目,名稱為firstSvn,如圖

開始修改配置文件,正常svn服務器都要關掉匿名登錄用戶需要使用用戶密碼登錄,這樣誰修改了什麼代碼才一目了然。打開firstSvn項目的配置文件/svndata/firstSvn/conf/svnserve.conf 把password-db和authz-db兩個配置項前面的注釋去掉,password-db設置用戶名密碼存放的文件,authz-db設置項目下各個目錄的用戶權限,修改完如圖

編輯/svndata/firstSvn/conf/passwd文件,添加svn用戶firstSvnUser和密碼

編輯/svndata/firstSvn/conf/authz文件,給當前的項目添加用戶和權限,可以能單獨用戶授權,也可以把用戶添加到組裏,給組授權。表示當前項目的根目錄,r表示只讀,w表示可寫,前面可以讀寫的用戶授權完,最後*表示除了上面列出的其他用戶,空表示不給任何權限,就是不能訪問

配置完畢,用命令svnserve -d -r /svndata/ --log-file=/svndata/svn.log啟動svn服務器。-d表示以daemon模式在後台運行,不會因窗口關掉而退出;-r指定svn項目存放的目錄;--log-file指定日志文件,保存用戶checkout、commit的記錄。用命令檢查svnserve是否正常運行,有在監聽3690端口

使用命令svn --username=firstSvnUser co svn://10.0.2.15/firstSvn,在linux下checkout出svn項目的內容,輸入前面/svndata/firstSvn/conf/passwd裏設置的用戶密碼

這樣就checkout成功了。

每次ubuntu操作系統重啟後,都要手動去啟動svnserve,我們可以手動把它加進隨操作系統啟動的列表。添加啟動腳本/etc/init.d/subversion 內容如下

修改腳本文件的屬性chmod 755 /etc/init.d/subversion 。

使用下面命令把腳本連接到啟動目錄

ln -s /etc/init.d/subversion /etc/rc3.d/S03subversion ln -s /etc/init.d/subversion /etc/rc4.d/S03subversion ln -s /etc/init.d/subversion /etc/rc5.d/S03subversion結果如下

這樣操作系統重啟後,svnserve服務就會自動啟動。