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


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

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

3  創建版本庫
   3.1先創建目錄文件夾
  
  
  
          
  1. sudo mkdir /home/svn
   
   
   
           
  1. sudo mkdir /home/svn/project1
  2. sudo mkdir /home/svn/project2
   3.2創建第一個項目 project1 第二個項目 project2
   
   
   
           
  1. svnadmin create /home/svn/project1
  2. svnadmin 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 修改為:

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

           (password-db = ../../passwd,authz-db = ../../authz代表相對路徑而非絕對路徑)


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

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

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

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


6. 下面添加角色

       打開svn目錄下的passwd文件,創建方法是在[user]下面添加 username = passwd,記得“=”前后的空格,如下圖:

       (svnadmin控制所有項目,統一管理)


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

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

8啟動svn服務

    8.1一次啟動
   
   
   
           
  1. sudo svnserve -d -r /home/svn
查看是否啟動成功,可看的監聽3690端口
   
   
   
           
  1. sudo netstat -antp |grep svnserve
    
    
    
            
  1. 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
   
   
   
           
  1. cd /etc/init.d
  2. touch svnd.sh
  3. chmod +x svnd.sh
  4. vi svnd.sh
輸入如下內容:
   
   
   
           
  1. #!/bin/bash
  2. #svnserve startup
  3. svnserve -d -r /ysh/svn
更新修改權限:
   
   
   
           
  1. update-rc.d svnd.sh defaults
(若提示權限不足,請用sudo執行)


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

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








免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM