1/安装svn,创建版本库
yum install subversion
mkdir /data/svn -p
svnadmin create /data/svn/oudianyun
2、下载安装submin
mkdir /usr/local/submin -p
#wget 不下来,直接复制下载链接web页面下载
wget http://supermind.nl/submin/current/submin-1.2.10.tar.gz
tar zxf submin-1.2.10.tar.gz
cd submin-1.2.10/bin
python ./install.py /usr/local/submin/
/usr/local/submin/bin/submin-admin create default
yum install apr apr-util
yum install mod_dav_svn
这里会自动生成一些文件,这里authz是管理用户的权限;htpasswd是管理用户的密码;
userproperties是管理用户的其他信息(邮箱等);default.conf是主配置文件,
之后需要修改;最后一个文件是和apache的整合,需要添加到apache的主配置文件里面。
#添加环境变量文件:
1
2
3
4
|
######submin######
SUBMIN_HOME=
/usr/local/submin
export
SUBMIN_HOME
export
PATH=${PATH}:${SUBMIN_HOME}
/bin
|
3、安装apache
yum install httpd -y
#添加以下行
vim /etc/httpd/conf/httpd.conf
Include /etc/submin/default-apache-cgi.conf
4、配置submin的相关文件
ln -s /etc/submin/default-apache-cgi.conf /etc/httpd/conf.d/submin.conf
这个文件之后需手动修改,做链接目的方便管理
cp /var/lib/submin/authz /data/svn
cp /var/lib/submin/htpasswd /data/svn
cp /var/lib/submin/userproperties.conf /data/svn
把submin的用户信息文件复制到我们自己之前建立的svn库的根目录中
rm -rf /var/lib/submin/svn/
ln -s /data/svn /var/lib/submin/svn
chown -R apache:apache /data/svn
因为要用apache登录,所以这里把svn库根目录的用户进行修改
vim /etc/submin/default.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
[svn]
authz_file =
/data/svn/authz
userprop_file =
/data/svn/userproperties
.conf
access_file =
/data/svn/htpasswd
repositories =
/data/svn
[www]
base_url =
/submin
svn_base_url =
/svn
#添加这行,否则web页面建库报错。
trac_base_url =
/svn
[backend]
bindir =
/usr/local/submin/share/submin/bin
[generated]
session_salt =
/CMXp8k8wuOlQgC3
|
修改submin.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
vim
/etc/httpd/conf
.d
/submin
.conf
Alias
/submin
/usr/local/submin/share/submin/www
<Directory
/usr/local/submin/share/submin/www
>
Order allow,deny
Allow from all
Options ExecCGI FollowSymLinks
AddHandler cgi-script py cgi pl
SetEnv SUBMIN_CONF
/etc/submin/default
.conf
RewriteEngine on
RewriteBase
/submin
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.+)$ submin.cgi/$1
RewriteRule ^/?$ submin.cgi/
<
/Directory
>
<Location
/svn
>
DAV svn
SVNParentPath
/data/svn
AuthType Basic
AuthName
"Subversion repository"
AuthUserFile
/data/svn/htpasswd
AuthzSVNAccessFile
/data/svn/authz
Satisfy Any
Require valid-user
<
/Location
>
|
/etc/init.d/httpd restart
http://192.168.121.128/submin 默认用户密码admin admin
登录后再web页面修改密码;
新建一个svn仓库:
#服务器端的svn仓库同时也是可以看到的。
#测试新建个用户授权:submin对用户的密码是有要求的,太短登录不了的,测试时发现的。
用户lisi登录查看:
#创建用户,密码需要输入2次哦:
windows客户端软件chkout和commit测试:
chkout完成。
commit提交测试:
commit 完全ok。