1. 程式人生 > >Linux系統配置 SVN 伺服器

Linux系統配置 SVN 伺服器

檢查是否已經安裝:

-qa subversion

安裝SVN伺服器:

yum install httpd httpd-devel subversion mod_dav_svn mod_auth_mysql

驗證是否安裝好:

開啟資料夾:

[root@iZwz9c6jlipu33po7lw2kgZ svn]# cd /etc/httpd/modules
[root@iZwz9c6jlipu33po7lw2kgZ modules]# ls | grep svn

在這裡插入圖片描述

檢視版本:

svnserve --version

在這裡插入圖片描述

程式碼庫建立:

mkdir -
p /usr/local/src/svn/repositories svnadmin create /usr/local/src/svn/repositories

執行後,自動建立repositories庫,檢視/opt/svn/repositories資料夾包含了conf,db,format,hooks,locks,README.txt等檔案,說明一個SVN庫已經建立。

配置版本庫:

進入上面conf資料夾下,進行配置:

  • [ ]使用者密碼passwd配置:
vi + passwd  //+表示游標放在檔案最低端

為password 增加如下內容:
在這裡插入圖片描述

  • 許可權控制authz配置
 vi + authz

設定哪些使用者可以訪問哪些目錄,向authz檔案追加以下內容:
[/]
wang=rw //給該使用者訪問所有庫的許可權

[repositories:/project] //repository庫的根目錄許可權
wang=rw
/ 表示根目錄及以下,根目錄是svnserve啟動時指定的,我們指定的是/opt/svn;/ 就是指對全部版本庫都具有許可權
repositories:/ 表示對庫repositories的根目錄設定許可權
許可權配置檔案中出現的使用者名稱必須已在使用者配置檔案中定義。
對許可權配置檔案的修改立即生效,不必重啟svn。

在這裡插入圖片描述

服務svnserve.con配置:

[root@iZwz9c6jlipu33po7lw2kgZ conf]# vi + svnserve.conf

增加如下內容:
在這裡插入圖片描述
在這裡插入圖片描述

配置防火牆埠:

不一定每個人都需要設定,可以先測試後再看是否需要開啟埠

# vi /etc/sysconfig/iptables
新增一下內容:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT
儲存後重啟防火牆
# service iptables restart

啟動SVN

[root@iZwz9c6jlipu33po7lw2kgZ conf]# svnserve -d -r /usr/local/src/svn/repositories

檢視SVN程序

[root@iZwz9c6jlipu33po7lw2kgZ conf]# ps -ef|grep svn|grep -v grep

檢測SVN埠

netstat -ln |grep 3690

停止/重啟SVN

killall svnserve //停止
svnserve -d -r /usr/local/src/svn/repositories

測試連線:

使用TortoiseSVN進行測試:

  1. SVN服務啟動後,需要使用客戶端測試連線:
        客戶端連線地址:svn://192.168.15.2;然後,輸入使用者名稱密碼;
  2. 新建一個資料夾,即本地的庫資料夾,右鍵checkout,將會得到一個隱藏資料夾.svn;
  3. 在此資料夾中放入專案內容,然後右鍵點選commit,就可以上傳本地專案了。
    在這裡插入圖片描述