快速搭建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.178linux.com/63299

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

相关推荐

  • Linux Yum源的安装配置​‍

    Linux Yum源的安装配置     一、基本概念   Yum(全称为YellowdogUpdater,Modified)是一个在Fedora和RedHat以及SUSE、CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包…

    Linux干货 2015-05-11
  • Linux终端类型

    Linux终端类型 关键字:linux终端,串行终端ttySn;伪终端pty;控制终端tty;控制台终端console 要想与Linux打交道,就必须学会使用Linux终端。所谓Linux终端,其实也就是一种控制台,一种字符设备,通常用tty标识,它是用户和Linux内核交互的平台,用户能在平台上通过各种指令操作Linux。终端的特殊设备文件一般分为以下几种…

    Linux干货 2016-10-19
  • 第十周

    1、请详细描述CentOS系统的启动流程(详细到每个过程系统做了哪些事情) 1.POST 开机加电自检,对计算机的cpu,硬盘,内存等进行检测。 2.BIOS 对引导程序进行探测,并把控制权交给引导程序。 3.MBR Master bootloader record主引导程序.通常位于硬盘第一扇区/dev/hda(0,0)或/dev/sda(0,0). 此阶…

    Linux干货 2017-03-30
  • MySQL备份与恢复

    备份与恢复 数据备份就是将数据以某种方式加以保留,以便在系统需要时重新恢复和利用。其作用主要体现在如下两个二方面: 在数据遭到意外事件破坏时,通过数据恢复还原数据 数据备份是历史数据保存归档的最佳方式 数据恢复就是把遭到破坏、删除和修改的数据还原为可使用的数据的过程 为什么要备份数据? 在生产环境中我们数据库可能会遭遇各种各样的不测从而导致数据丢失, 大概分…

    Linux干货 2016-11-25
  • alias——Linux基本命令(4)

    1.     alias别名 (1)查看、设置别名 Linux系统提供了一个有用的工具叫alias,可以让我们将一些需要频繁使用的但又过于冗长的命令设置一个别名,这样一来,以后只需输入一个简短的别名就可以达到同样的作用。 alias显看当前已定义的别名   使用aliasaliname=’comm…

    2017-07-13