centOS下SVN安裝和配置


1》SVN服務器端文件可見問題

  在平時使用SVN時候,一直以為在客戶提交文件,那么在服務器對應的版本庫下面就會有相同文件。在自己搭建后,發現提交到服務器端文件完全看不見。。。。

  這是由於SVN服務器端不是簡單將上傳的文件一個個存起來,而是采用特殊格式,按照內容增量方式存放,等於說每次文件修改commit,就會生成一個標志文件,而這個文件內只是記錄了增加(刪減)位置+增加(刪減)內容;

2>安裝

     yum list subversion 查看軟件列表中subversion

  yum -y install subversion 安裝

       whick subversion 查看安裝目錄

      svnserve --version 查看是否安裝成功

 3》修改根目錄

  subversion安裝后默認根目錄是在/var/svn下,可以通過修改/etc/sysconfig/svnserve配置文件中OPTIONS來改變根目錄

4>建立版本庫

      mkdir -p /var/svn  建立根目錄

      snvadmin create /var/svn/myrepo 建立一個版本庫.

      myrepo目錄下必然有以下文件 

   主要是修改conf下三個文件

     4.1》先修改passwd文件,按照‘用戶名=密碼‘

 

    4.2>在修改authz,這個文件比較關鍵

    

  [groups]是組,這個組隨便定義的,跟liunx系統組無關。按照"組名 = 用戶",但用戶必須是passwd里面定義的,不能隨便填。

       這里有兩個版本庫maoke和s1s,分別定義了訪問權限

  [maoke:/] 表示maoke版本庫訪問權限,圖中是按照用戶定義訪問權限的。而s1s是按照組定義,按照組定義時候前面要加"@"符號

  * =   表示無權限的人無法訪問       

  4.3>svnserve.conf配置

      這里有建議,將每個版本庫中的passwd和authz文件刪除,將svnserve.conf中password-db和authz-db指向一個文件,這樣可以統一管理版本庫的登陸權限,而不需要一個一個的處理。如上截圖

     realm 表示此版本庫說明,隨便寫。

    5>啟動svn

  systemctl start svnserve.service

  檢查服務是否啟動成功。

  $ ps aux | grep svn
  root      16349  0.0  0.1 162180   900 ?        Ss   15:01   0:00 /usr/bin/svnserve --daemon --pid-file=/run/svnserve/svnserve.pid -r /opt/svn

  通過netstat可以看到SVN打開了3690端口。

  $ sudo netstat -tnlp
  Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
  tcp        0      0 0.0.0.0:3690            0.0.0.0:*               LISTEN      16349/svnserve 

 6>設置成開機啟動。

systemctl enable svnserve.service   如下截圖

  7>SVN文件管理 

  第一時候,先checkout空版本庫。然后建立trunk,branches,tags進行管理


免責聲明!

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



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