CentOS 6.6下安装配置SVN服务器的步骤

作者:袖梨 2022-06-30


安装篇

查看是否安装了系统自带的subversion:


[root@topseek ~]# rpm -qa |grep subversion
subversion-1.6.11-12.el6_6.x86_64

若已经安装则卸载掉:

[root@topseek ~]# yum remove subversion
下载subversion程序:


cd /usr/local/src/ && wget http://mirror.bit.edu.cn/apache/subversion/subversion-1.8.11.tar.bz2
解压:


tar -jxvf subversion-1.8.11.tar.bz2

下载subversion依赖的sqlite数据库,放置到subversion的文件夹下:


cd subversion-1.8.11 && wget http://www.sqlite.org/sqlite-amalgamation-3071501.zip && unzip sqlite-amalgamation-3071501.zip  && mv sqlite-amalgamation-3071501 sqlite-amalgamation
编译、安装:


[weizhen@topseek ~]$ yum install perl-ExtUtils-Embed
[weizhen@topseek ~]$ cd /usr/local/src/subversion-1.8.11/
[weizhen@topseek subversion-1.8.11]$ ./configure --prefix=/opt/subversion
[weizhen@topseek subversion-1.8.11]$ make
[weizhen@topseek subversion-1.8.11]$ make install
加入系统变量:


echo 'export PATH=$PATH:/opt/subversion/bin'>>/etc/profile && source /etc/profile

至此,安装完成。
配置篇
创建文件夹:


mkdir -p /data/svndata/{project1,project2}
建立svn版本库project1:


svnadmin create /data/svndata/project1
此时在下有若干文件:


conf  db  format  hooks  locks  README.txt

配置文件在conf下:


authz  passwd  svnserve.conf

其中svnserve.conf是版本库配置,passwd是用户配置文件,authz是权限配置文件。

修改svnserve.conf配置文件如下:


[general]
# 使非授权用户无法访问
anon-access = none
# 使授权用户有写权限
auth-access = write
# 指明密码文件路径
password-db = passwd
# 访问控制文件
authz-db = authz

修改用户文件passwd:


[users]
user01 = 123456
user02 = 123456
注意,前面是用户名,后面是密码。
修改authz按提示修改即可。
启动SVN服务:


svnserve -d -r /data/svndata/

注:该指令用于启动svn服务,-d指明以守护模式运行,svn自动在3690端口监听。3690是默认端口,可以使用“–listen-port=”或者“–listen-host=”来指定其它端口以及非本地主机。-r选项用来指定svn服务的根目录,这样用户就可以使用相对路径访问,而不用提供完整路径。

关闭SVN进程:


killall svnserve
注:当指向/data/svndata/是表示可以创建多个仓库,访问时的地址是:“svn://IP/project1”、“svn://IP/project2”等形式
查看端口:


[root@topseek ~]# lsof -i:3690
COMMAND    PID USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME
svnserve 25456 root    3u  IPv4 2128419      0t0  TCP *:svn (LISTEN)

设置随机启动服务器:


echo "svnserve -d -r /data/svndata/" >> /etc/rc.local
客户端:
Windows下应该是TortoiseSVN这个免费的比较好用:

相关文章

精彩推荐