首先介绍一下吧,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,小伙伴们...