1. 程式人生 > >Linux下伺服器搭建SVN

Linux下伺服器搭建SVN

系統環境:Centos 7

第一步:通過yum命令安裝svnserve,命令如下:

>yum -y install subversion

此命令會全自動安裝svn伺服器相關服務和依賴,安裝完成會自動停止命令執行

若需檢視svn安裝位置,可以用以下命令:

>rpm -ql subversion

第二步:建立版本庫目錄(此僅為目錄,為後面建立版本庫提供存放位置)

選擇在var路徑下建立版本庫,當前處於根目錄下,一次性建立如下也可以分級建立:

>mkdir /var/svn/svnrepos

第三步:建立svn版本庫

在第二步建立的路徑基礎上,建立版本庫,命令如下:

>svnadmin create /var/svn/svnrepos/xxxx   (xxxx為你預期的版本庫名稱,可自定義)

建立成功後,進入xxx目錄下

>cd /var/svn/svnrepos/xxxx

進入目錄,可以看見如下檔案資訊:

第四步:配置修改

進入已經建立好的版本庫目錄下,也就是前文說建立的xxxx

進入conf

>cd /var/svn/svnrepos/xxxx/conf

conf目錄下,一共存放三份重要的配置檔案,如下:

 

authz:負責賬號許可權的管理,控制賬號是否讀寫許可權

passwd:負責賬號和密碼的使用者名稱單管理

svnserve.conf:svn伺服器配置檔案

細節修改如下:(希望大家嚴格按照以下資訊,不用參考網路上其他資料)

修改authz檔案資訊,如下:

>vi authz

在檔案內容的末尾,新增如下:

 

 

rw表示賦予此賬號可讀寫的許可權,請注意[]中的斜槓,一定是反斜槓,有些教程說,需新增版本庫名稱在括號內,我直接建議就這寫,這樣寫允許訪問的許可權更大,避免一些錯誤

修改passwd檔案資訊

>vi passwd

賬號密碼檔案無需做修改,也是直接將賬號和密碼資訊追加到檔案中即可,注意格式為:

賬號 = 密碼

例如:admin = 123456

修改svnserve.conf(重要)

vi svnserve.conf

原始檔案內容,都被註釋掉的,我們只需要去掉4條指定內容前註釋即可,如下:

 

大多數網路資料,都會讓大家將authz-db = authz這條給去掉註釋,經過我本人多次被坑經驗,此條去掉後,雖然svn伺服器可以連線,但一直會提示“認證失敗”,註釋掉即可正常

還有多數資料會讓大家在realm = My First Repository處填寫伺服器ip,經過測試,填寫後並無什麼用處,所以大家去掉註釋即可,無需做任何修改

到此,配置已經全部完成,賬號資訊已經新增成功

第五步:防火牆開啟

多數情況下伺服器安裝完成,配置完成後,無法連線svn伺服器,均是防火牆問題,大家按照如下3條命令逐一執行即可

>/sbin/iptables -I INPUT -p tcp --dport 3690 -j ACCEPT

>/etc/init.d/iptables save

>service iptables restart

執行結果如下圖:

也可以這樣新增埠號:

方法二:直接編輯/etc/sysconfig/iptables檔案

               1.編輯/etc/sysconfig/iptables檔案:vi /etc/sysconfig/iptables

                  加入內容並儲存:-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT

六:啟動svn伺服器

在跟目錄下,執行如下命令:

>svnserve -d -r /var/svn/svnrepos

啟動成功後,可用ps -aux檢視服務啟動是否成功

七:客戶端訪問svn伺服器

在windows客戶端,輸入地址:svn://ip地址:3690/xxxx   (iP地址為你linux的ip,xxxx為前文建立的版本庫名稱,3690為svn預設埠)

彈出輸入使用者名稱和密碼,輸入即可訪問