快速搭建SVN服務器

一、背景介紹

svn服務器是一款上傳代碼的工具(貌似這么說不怎么嚴謹,但是在日常工作中基本上是這么用的),今天一個小伙伴折騰了一天也沒有搭建好這個svn服務器。各種問題,其實搭建SVN服務器最重要的就是三個配置文件(svnserver.conf、 passwd 、authz)。出了問題的話十有八九是這三個配置文件的問題。最后,我自己搭建了一個,測試成功。于是把這個過程記錄下來,以備使用。當然還有一個問題,那就是客戶端的svn工具版本太低造成的,會用提示的。運維最好是在拿另外一臺服務器當客戶端來測試,確保自己的svnserver沒有問題,然后就可以愉快的去懟開發了。

二、安裝過程

[root@localhost ~]# yum -y install subversion
[root@localhost ~]# svnadmin create /home/svn/repos #svn倉庫的位置
[root@localhost ~]# cd /home/svn/repos/
[root@localhost repos]# ls
conf  db  format  hooks  locks  README.txt
[root@localhost repos]# cd conf/
[root@localhost conf]# vim svnserve.conf

將以下內容的注釋去掉,然后這些配置要頂頭,不能與左側有空格,不然會報錯

[general]
anon-access = none     #匿名訪問權限,默認read,none為不允許訪問
auth-access = write   #認證用戶權限  
password-db = passwd  #用戶信息存放文件,默認在版本庫/conf下面,也可以絕對路徑指定文件位置
authz-db = authz
[root@localhost conf]# vim passwd
[users]
xiaoming = 123
zhangsan = 123
lisi = 123
[root@localhost conf]# vim authz 
[groups]           #定義組的用戶
manager = xiaoming
core_dev = zhangsan,lisi
[repos:/]          #以根目錄起始的repos版本庫manager組為讀寫權限
@manager = rw
[repos:/media]     #core_dev對repos版本庫下media目錄為讀寫權限
@core_dev = rw

到此位置所有配置已完成

[root@localhost conf]# svnserve -d -r /home/svn   #啟動svnserver
[root@localhost conf]# netstat -antp |grep svnserve  #查看端口號3690
tcp        0      0 0.0.0.0:3690                0.0.0.0:*                   LISTEN      17412/svnserve     
[root@localhost ~]# iptables -F              #關閉防火墻

三、測試

接下來到另外一臺服務器上去做測試,此時這臺服務器是客戶端的角色

[root@localhoast svntest]# svn checkout svn://172.16.72.4/repos /svn --username xiaoming --password 123              
-----------------------------------------------------------------------
ATTENTION!  Your password for authentication realm:
   <svn://172.16.72.4:3690> ef513f9d-89b5-4751-94fa-bfadb578deb4
can only be stored to disk unencrypted!  You are advised to configure
your system so that Subversion can store passwords encrypted, if
possible.  See the documentation for details.
You can avoid future appearances of this warning by setting the value
of the 'store-plaintext-passwords' option to either 'yes' or 'no' in
'/root/.subversion/servers'.
-----------------------------------------------------------------------
Store password unencrypted (yes/no)? yes
Checked out revision 0.    #成功

svn現在的使用率一直在下降,被git所取代,就像apache被nginx取代一樣。但這也是一款很常用的程序,至少開發每天都在用。


原創文章,作者:hanlln1,如若轉載,請注明出處:http://www.www58058.com/63299

(2)
hanlln1hanlln1
上一篇 2016-12-11 22:28
下一篇 2016-12-12 00:57

相關推薦

  • ipvsadm用法

    ipvsadm命令的用法:      1.用于管理Lvs集群服務      2.用于進行RS的增刪改      3.查看配置  lvs服務器架設步驟:  1.判斷內核是否支持ipvs(看到CONFIG_NETFIFLER_XT_MATCH_IPVS=…

    Linux干貨 2017-01-10
  • 組管理與grep匹配

    1、復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。     ~]# cp -r /etc/skel /home/tuser1     ~]# chmod -R 700 /home/tuser1 2…

    Linux干貨 2016-10-17
  • N26-第一周博客作業

    1、計算機的組成及功能     CPU: Central Processing Unit 運算與管理控制功能        包括:          &nbsp…

    Linux干貨 2017-01-10
  • 進程管理

    linux維護工作中,常常需要對系統上運行的程序進行管理,那么進程管理就顯得相當重要。 進程初識 什么是進程?   進程是并發執行的程序在執行過程中分配和管理資源的基本單位,是一個動態概念。它代表CPU所能處理的單個任務。 什么是線程?   線程是程序流執行的最小單元,可以理解為進程中執行的一段程序片段。 進程與線程聯…

    Linux干貨 2016-09-07
  • 關于大型網站技術演進的思考(五):存儲的瓶頸(5)

    原文出處: 夏天的森林    上文里我遺留了兩個問題,一個問題是數據庫做了水平拆分以后,如果我們對主鍵的設計采取一種均勻分布的策略,那么它對于被水平拆分出的表后續的查詢操作將有何種影響,第二個問題就是水平拆分的擴容問題。這兩個問題在深入下去,本系列就越來越技術化了,可能最終很多朋友讀完后還是沒有找到解決實際問題的啟迪,而且我覺得…

    Linux干貨 2015-03-11
  • MYSQL高級運用-MHA(提供主從復制高可用,主節點故障時,進行故障轉移)

    MHA的介紹、重用工具;
    MHA的安裝;
    搭建MYSQL主從復制架構,運用MHA實現其高可用,主節點故障時,進行故障轉移;并恢復整個架構;

    2017-09-24
欧美性久久久久