linux centos 配置 svn 服务器

    首先介绍一下吧,Subversion(SVN) 是一个开源的版本控制系統, 也就是说 Subversion 管理着随时间改变的数据。 这些数据放置在一个中央资料档案库 (repository) 中。 这个档案库很像一个普通的文件服务器, 不过它会记住每一次文件的变动。 这样你就可以把档案恢复到旧的版本, 或是浏览文件的变动历史。

    废话少说,上正题吧!

1 首先检查subversion安装包,没有的话,就需要安装了。

#yum list | grep subversion

subversion.x86_64                      1.6.11-9.el6_4                   @updates
subversion.i686                        1.6.11-9.el6_4                   updates
subversion-devel.i686                  1.6.11-9.el6_4                   updates
subversion-devel.x86_64                1.6.11-9.el6_4                   updates
subversion-gnome.i686                  1.6.11-9.el6_4                   updates
subversion-gnome.x86_64                1.6.11-9.el6_4                   updates
subversion-javahl.i686                 1.6.11-9.el6_4                   updates
subversion-javahl.x86_64               1.6.11-9.el6_4                   updates
subversion-kde.i686                    1.6.11-9.el6_4                   updates
subversion-kde.x86_64                  1.6.11-9.el6_4                   updates
subversion-perl.i686                   1.6.11-9.el6_4                   updates
subversion-perl.x86_64                 1.6.11-9.el6_4                   updates
subversion-ruby.i686                   1.6.11-9.el6_4                   updates
subversion-ruby.x86_64                 1.6.11-9.el6_4                   updates
subversion-svn2cl.noarch               1.6.11-9.el6_4                   updates

#yum -y install subversion  # 安装svn安装包

Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
 * base: mirrors.btte.net
 * extras: mirrors.btte.net
 * updates: mirrors.btte.net
Setting up Install Process
Package subversion-1.6.11-9.el6_4.x86_64 already installed and latest version
Nothing to do
(上面表明我已经成功安装了,没有安装的了,即Nothing to do,如果没有的朋友,就可以通过上面这条命令自动安装完毕。)

#svnserve --version  (查询SVN版本信息)

svnserve,版本 1.6.11 (r934486)
   编译于 Apr 11 2013,16:13:51

版权所有 (C) 2000-2009 CollabNet。
Subversion 是开放源代码软件,请参阅 http://subversion.tigris.org/ 站点。
此产品包含由 CollabNet(http://www.Collab.Net/) 开发的软件。

下列版本库后端(FS) 模块可用:

* fs_base : 模块只能操作BDB版本库。
* fs_fs : 模块与文本文件(FSFS)版本库一起工作。

Cyrus SASL 认证可用。

(从上面的版本内容可以知道我的SVN版本是多少)

2 创建svn版本库(即repository)

# mkdir -p /home/mySVN_data  (这里的内容可以自己定义了,没有必然关系)

#svnadmin create /home/mySVN_data/ProjectName (这里的ProjectName,就是项目的名字,自己随便取吧)

3 修改配置文件

#vim  /home/mySVN_data/ProjectName/conf/svnserve.conf  (下面的内容在svnserve.conf中就有,只需要将该行内容的#和后面的空格去掉即可,一定要保证顶格,否则运行出错。)

[general]

anon-access = none   #不允许匿名访问

auth-access = write   #认证用户可写

password-db = passwd   #需要使用密码文件密钥

authz-db = authz    #需要使用用户验证文件验证

#vim /home/mySVN_data/ProjectName/conf/authz

[groups]

hd = zhou   #hd为组名,zhou为用户名,自己随便定义吧

[/]

zhou = rw

@hd = rw

[mySVN_data:/ProjectName]

zhou = rw

4 检查TCP 3690 端口是否启用监听

#netstat -nat | grep 3690

tcp        0      0 0.0.0.0:3690                0.0.0.0:*                   LISTEN    (表明,我的机器的tcp3690端口已经启用监听)
这里必须说一下:

对于很多linux的发行版本,默认都是打开3690端口的,比如ubuntu,但是我使用的centos却是没有打开tcp 3690 端口的,这就必须自己手动打开这个端口了,方法如下:

#iptables -I INPUT -p tcp --dport 3690 -j ACCEPT

#/etc/rc.d/init.d/iptables save

#/etc/init.d/iptables status

iptables:将防火墙规则保存到 /etc/sysconfig/iptables:     [确定]
5 都配置好了,那就可以启动/停止SVN服务

#svnserve -d -r /home/mySVN_data    (启动服务)

#ps aux | grep svn  (停止服务)

root      2350  0.0  0.0 174928  1008 ?        Ss   19:51   0:00 svnserve -d -r /home/mySVN_data
#kill 2350  

enjoy,小伙伴们...

原文地址:https://www.cnblogs.com/keanuyaoo/p/3331206.html