svn管理系统svnmaia

Svn管理系统svnmaia部署

 

svnmaia简介

vnMaia是一套基于PHP+MYSQL运行环境的web程序,用于管理subversion的用户、权限信息。该程序大量应用js技术,使得操作简便、快速。

部署svnMaia后,svn普通用户可通过web界面自助进行注册用户、权限申请、修改密码、重置密码、查看自己的权限、查看目录的权限设置。

超级用户可以为各个目录设置svn管理员分担权限审批责任,可以通过web界面删除用户、进行权限变更、修改用户名等。

通过使用svnMaia可以较大幅度提升配置管理员的工作效率。

安装svn服务器

1、  安装subversion

Yum install subversion

2、  初始化版本仓库

安装完subversion后,需要初始化一个版本库,用于管理代码。

(1)    新建仓库目录

Mkdir  /svn  

(2)     在新建仓库目录上创建仓库

Svnadmin create /svn/project1

创建版本库之后,会在版本库目录内生成如下文件:

 wKiom1N7UOeTinVZAABLM8_o2oA495.jpg

3、  用户管理权限设置

Svn服务器的配置文件主要有三个,

wKioL1N7UOHDiP9eAABCow0ck6s079.jpg

Passwd �C用户名及密码管理

Authz �C权限配置

Svnserve �Csvn全局配置文件

添加用户

passwd文件中添加一行如“user = password”条目即可。如:

wKioL1N7UPqA-O85AABEz3wN7Qw797.jpg

用户访问策略,在authz文件中[groups]内添加如 groupname = user1user2的一行,添加权限组用户,添加[/path/to/svn_directory],在它下一行添加组的权限类似@groupname =  Privilege的一行,privilege为r或w或rw

 

wKioL1N7UQziXdbJAAB-Jd9qRHs338.jpg

修改全局配置文件

wKiom1N7UUTg9xOXAARhJ1Xq19g156.jpg

去掉如下行的注释,注意前面不要留空格。

4、  启动svn服务器,测试

wKioL1N7USXQnnXHAAA3mMVUJ6k955.jpg

Svn客户端连接测试:


wKioL1N7UWSAcFy5AAC5PegTUbE411.jpg

wKiom1N7UZCh_a7FAACJS9HQri8472.jpg

登录没问题,添加http支持

svn服务添加http支持(在此之前建议将svn版本库的所有文件修改为apache用户apache组)

(1)    安装apahchemod_dav_svn模块

wKioL1N7UYGyC-onAAA0jaRlv0A167.jpg

安装mod_dav_svn模块之后会在/etc/httpd/con.d/下生成subversion.conf文件。

(2)    编辑/etc/httpd/con.d/subversion.conf文件,做如下修改:

wKiom1N7UbjxiMR6AAG0AAvXnoU158.jpg

(3)    svn添加虚拟主机,在/etc/httpd/con.d/下创建一个svn虚拟主机的配置文件,写入如下内容:

wKioL1N7UZ3wE-bhAAC7r0zBylk613.jpg


 

(4)    基于重启http测试。

wKiom1N7Ucjh4SXYAADk9mdRizw379.jpg


访问成功,你可能发现不需要验证就可以访问,这可能不是我们想要的,下面就添加验证设置,注意这里的验证和svn独立服务的验证文件完全没有关系,因为这里的用户和密码文件是有htpasswd创建的。

(5)    添加验证配置。

svn.conf中添加验证设置,改变后的文件如下:

wKioL1N7UZ3joUPGAAFs3lxN9qk442.jpg

创建用户文件:

wKioL1N7UkSRIe54AABn4WSoqug891.jpg

可以查看一下

wKioL1N7UcXwRxrRAAA_QRjsKz0610.jpg

   

第一创建的时候加-c,第二次就不要加了,添加后覆盖以前的文件

创建权限控制文件,内容格式和svn独立服务的权限控制文件格式一样,可以用同意哥文件的,如

wKiom1N7UoXxnp1EAAAsOrESmcY729.jpg



(6)    重启httpd测试

wKioL1N7UlmTD_SYAACEQFiL7ws265.jpg

wKiom1N7UoWw56Q3AACmWHiWjKw009.jpg

出现登录会话框,输入帐号密码登录成功。

部署svnmaia

Svnmaiaphp程序,依赖与phpmysql,所以要安装phpmysql

(1)    安装mysql-serverphpphp-mysql

wKioL1N7UlmghoYOAABKVHlGc-8572.jpg


(2)    下载svnmaia至版本库目录

wKiom1N7UoXCp5OOAABZKsfKeJc790.jpg

(3)    浏览器访问安装,访问10.0.3.34/project/2.2.4(因为没有做dns域名解析,这里我们用ip来访问),安装界面如下:

wKiom1N7UsGzj_dYAAEvPD4KGdU945.jpg


(4)    启动mysql,创建svnmaia用户和数据库,并授权(创建用户后,该程序也可以自动创建数据库)。

wKioL1N7UpWzYjFBAAC1zQYkl20960.jpg

(5)    填写相关参数,确定。

在此步骤中,本系统将试图创建数据库、数据表,并将信息保存到config.inc文件中(请确保此文件无法通过http访问)。

(7)填写好上述参数后,点击【确定】按钮。通常情况下会提示如下错误:

Fatal Error:不能写入到文件 /home/apache/htdocs/config.inc ! 保存失败!原因可能是此程序owner没有足够权限修改此目录文件,请修复!
这是个致命错误,建议您手工创建此文件,并包含如下内容:

 

cd /var/www/

touch config.inc

vi config.inc

 

<?php

define("SERVER","localhost:3306");

define("USERNAME2","root");

define("PASSWORD2","123456");

define("DBNAME","svnMaia");

define("SECRET_KEY","8f83ce83ad9dca82d9e85f38aedcbb98");

?>

 

遇到此情况时,你可以按其提示操作即可。创建完config.inc文件后,点击【下一步】。

 

(8)点击【下一步】后进入系统设置界面。如图:

wKiom1N7UsHBUVbGAAIQ_6RsmXE899.jpg

(9)善后工作

上述设置完成后,svnMaia就可以正常使用了。但为安全起见,你还应:

        删除 setup/setup.php文件。

        拷贝/default.htm为index.php(即覆盖掉原来的index.php)

(10)之后你就可以通过10.0.3.34/svn/2.2.4访问登录svnmaia。

注:因为没有做dns域名解析,所以本实验都是用ip来访问的,有域名解析后,也可以通过域名来访问。

 

 

 


你可能感兴趣的:(svn-svnmaia)