阿里云服务器Centos6.5 部署SVN实现多项目管理

开发要求部署个版本管理器,参照教程,写写自己的经验:

检查是否安装了低版本的SVN
[root@zck /]# rpm -qa subversion

#卸载旧版本SVN
[root@zck modules]# yum remove subversion
安装SVN

[root@zck modules]# yum install httpd httpd-devel subversion mod_dav_svn mod_auth_mysql
确认已安装了svn模块

[root@zck /]# cd /etc/httpd/modules
[root@zck modules]# ls | grep svn
mod_authz_svn.so
mod_dav_svn.so

验证安装:

svnserve,版本 1.6.11 (r934486)
   编译于 Feb 10 2015,22:08:22

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

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

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


Cyrus SASL 认证可用。

代码库创建

mkdir /opt/svn/svnconf    SVN配置目录

svnadmin create /opt/svn/Project1 项目一

svnadmin create /opt/svn/Project2 项目二

ll 可以看到以下文件:

conf/          format         locks/       
db/            hooks/         README.txt 

将passwd 、authz文件拷贝到/opt/svn/svnconf中,将两个项目下conf目录中的passwd 和 authz文件删除,修改项目中conf目录下的svnserve.conf 文件

[general]

anon-access = none

auth-access = write

password-db = /opt/svn/svnconf/passwd

authz-db = /opt/svn/svnconf/authz

注意:此处四行需定格写,不能有空格,否则报option expected错误。

配置代码库(svnconf目录下)

vim  passwd

添加:[users]
# harry = harryssecret
# sally = sallyssecret
zhoulf=123456

liulf=123456

vim authz

添加:  

[Project1:/]
zhoulf=rw

[Project2:/]
liulf=rw

vim svnserve.conf

添加:

[general]
#匿名访问的权限,可以是read,write,none,默认为read
anon-access=none
#使授权用户有写权限
auth-access=write
#密码数据库的路径
password-db=passwd
#访问控制文件
authz-db=authz
#认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字
realm=My First Repository

配置防火墙端口

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT

service iptables restart

svn默认端口3690

启动SVN

svnserve -d -r /opt/svn --listen-port 3390

测试
SVN服务已经启动,使用客户端测试连接。
客户端(自行下载客户端SVN)连接地址:svn://ip-addr/Project1

用户名/密码: zhoulf/123456
测试成功。

附:另外,svn可以与Apache整合,实现在web界面访问项目文件。详见文章:

你可能感兴趣的:(项目管理,阿里云,centos6.5,多项目管理)