Red hat 6.2 64bit 搭建subversion+usvn
一、 Subversion 简介
Subversion是一个自由,开源的版本控制系统。在Subversion管理下,文件和目录可以超越时空。Subversion将文件存放在中心版本库里。这个版本库很像一个普通的文件服务器,不同的是,它可以记录每一次文件和目录的修改情况。这样就可以籍此将数据恢复到以前的版本,并可以查看数据的更改细节。正因为如此,许多人将版本控制系统当作一种神奇的“时间机器”。
二、 环境准备
1
2
|
[root@
test
~]
# uname -a
Linux
test
2.6.32-220.el6.x86_64
#1 SMP WedNov 9 08:03:13 EST 2011 x86_64 x86_64 x86_64 GNU/Linux
|
设置SELINUX=disabled重启后关闭selinux
三、安装
1、安装所需软件
1
|
[root@
test
~]
# yum install -y subversionhttpd httpd-devel mysql mysql-server mysql-devel mod_auth_mysql php-commonphp-cli php php-mysql mod_ssl mod_dav_svn mod_perl sendmail wget gcc-c++ makeunzip perl* ntsysv vim-enhanced
|
说明:
subversion (SVN服务器 )
mysql-server (用于 codestriker)
httpd mod_dav_svn mod_perl (用于支持 WEB方式管理 SVN服务器 )
sendmail (用于配置用户提交代码后发邮件提醒 )
wget gcc-c++ make unzip perl* (必备软件包 )
ntsysv vim-enhanced (可选 )
Mod_auth_mysql 把用户名字和密码保存到MySQL数据库,然后直接使用它们进行身份验证。
Mod_dav_svn Apache通过Apache HTTP服务器用来维护Subversion版本库配置指示
查看subversion是否安装成功,如下图:
2、启动httpd、mysqld服务
启动httpd
启动mysqld
启动后设置mysqld密码,后面安装usvn时需要用
1
|
[root@
test
~]
# mysqladmin -u root password 123456
|
3、配置开机启动
1
2
|
[root@
test
~]
# tar -xzvf usvn-1.0.7.tar.gz -C /var/www/
[root@
test
~]
# mv /var/www/usvn-1.0.7/ /var/www/usvn
|
1
2
3
4
5
6
7
8
9
10
|
[root@
test
~]
# chown -R apache.apache /var/www/usvn/
[root@
test
~]
# vi /etc/httpd/conf/httpd.conf
Alias
/usvn
"/var/www/usvn/public"
<Directory
"/var/www/usvn/public"
>
Options +SymLinksIfOwnerMatch
AllowOverride All
Order allow,deny
Allow from all
<
/Directory
>
|
配置完成重启httpd
1
|
[root@
test
~]
# service httpd restart
|
通过IE打开http://192.168.2.15/usvn/install.php就可以按步骤一步步完成,此时如果打不开,请检查你的iptables、selinux是否有限制或是直接关掉iptables、selinux服务。
访问正常将会出现下面界面:
点Next step下一步▼
第2步语言默认是英文,这里我选择中文▼
第三步同意协议▼
第四步如果使用默认值不行,要做调整▼
改为以下路径可以顺利进入下一步▼(注:这里passwd和authz两个文件默认在/var/www/usvn目录是没有的,这里设置好路径后会自动创建这两个文件。)
填入上面创建的mysqld用户名和密码,勾选“创建数据库”,此处如果你没有安装php-pdo则会报错▼
创建一个账号用于登陆管理usvn▼
创建后会看到usvn/passwd文件里有admin用户
选择不检查更新▼
复制下面的代码到/etc/httpd/conf/httpd.conf里▼
点上面的“连接到USVN登陆”▼
至此整个subversion及USVN搭建完成。需要用USVN测试创建用户、用户组、项目是否正常。
创建用户组testdata▼
创建用户test属于testdata用户组▼
创建项目data▼
让testdata用户组可以管理这个项目▼
五、 TortoiseSVN安装使用
下载安装TortoiseSVN▼
测试检出http://192.168.2.15/usvn/svn/data▼
提示如下错误,是由于svnserve服务未启动▼
启动svnserve服务
再次尝试检测成功▼