SVN服務器在Ubuntu16.04下搭建多版本庫詳細教程

1  介紹
  Subversion是一個自由,開源的版本控制系統,這個版本庫就像一個普通的文件服務器,不一樣的是,它能夠記錄每一次文件和目錄的修改狀況。這樣就可 以很方面恢復到之前的版本,並能夠查看數據更改細節。目前,Subversion已成爲主流的開源代碼版本管理軟件之一,簡稱SVN。

2.  安裝和服務器搭建
    執行下列指令安裝  
  
  
  
  
sudo apt-get install subversion

3  建立版本庫
   3.1先建立目錄文件夾
  
  
  
  
sudo mkdir /home/svn
   
   
   
   
sudo mkdir /home/svn/project1sudo mkdir /home/svn/project2
   3.2建立第一個項目 project1 第二個項目 project2
   
   
   
   
svnadmin create /home/svn/project1svnadmin create /home/svn/project2

4. 爲了便於管理,將全部版本庫的密碼和權限設置在同一個文件下面,操做步驟以下:
    4.1 取出project1下面conf文件夾下的authz和passwd兩個文件到svn根目錄下面
    4.2 修改每一個版本庫目錄conf文件夾下面的svnserve.conf文件, 將

         # anon-access = read #auth-access = write # password-db = passwd#authz-db = authz 修改成:html

           anon-access = none auth-access= writepassword-db = ../../passwdauthz-db = ../../authzbash

           (password-db = ../../passwd,authz-db = ../../authz表明相對路徑而非絕對路徑)
服務器


5. 定義一下幾個角色用來測試
tcp

    5.1 配置管理員(svnadmin),用來管理整個庫
svn

    5.2 項目經理(manage),用來相關管理文檔
工具

    5.3 開發人員 (dev),測試開發是否正常
測試


6. 下面添加角色
spa

       打開svn目錄下的passwd文件,建立方法是在[user]下面添加 username = passwd,記得「=」先後的空格,以下圖:.net

       (svnadmin控制全部項目,統一管理)
3d


7. 爲角色分配權限:
       假設(quxin是project1的項目經理,huzhixin是project2的項目經理,dev一、dev2是project1 的開發人員,dev三、dev4是project2的開發人員,test1是             project1的測試人員,test2是project2的測試人員)

       庫目錄及具體權限以下圖所示:
       
    具體權限:(根目錄下,svnadmin擁有全部權限,其餘人只有讀權限,要設置子目錄權限,需設置子目錄上級的權限方可,設置個別文件權限以下:)
    

8啓動svn服務

    8.1一次啓動
   
   
   
   
sudo svnserve -d -r /home/svn
查看是否啓動成功,可看的監聽3690端口
   
   
   
   
sudo netstat -antp |grep svnserve
    
    
    
    
tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 28967/svnserve
若是想關閉服務,可以使用pkill svnserve

 8.2.開機自啓動svn
在/etc/init.d目錄創建一個腳本文件svnd.sh
   
   
   
   
cd /etc/init.dtouch svnd.shchmod +x svnd.shvi svnd.sh
輸入以下內容:
   
   
   
   
#!/bin/bash#svnserve startupsvnserve -d -r /ysh/svn
更新修改權限:
   
   
   
   
update-rc.d svnd.sh defaults
(若提示權限不足,請用sudo執行)


9 工具
SVN 服務器端:Subversion 1.5 ,客戶端 TrotoiseSVN 1.5 ( https://tortoisesvn.net/downloads.html)

10訪問版本庫地址
   
   
   
   
svn://172.16.26.28/project1
    
    
    
    
svn://172.16.26.28/project2





相關文章
相關標籤/搜索