关于yum的镜像配置省略,使用国内镜像能显著加快安装。不同于编译安装,预编译的包能节省大量时间。svnmanager运行需要mysql的数据库,这里省略。
安装软件
安装svn
$ yum install subversion
安装httpd
1$ yum install httpd 2#安装svn的httpd扩展模块 3$ yum install mod_dav_svn
安装php
1$ yum install php.x86_64 2#安装需要php的扩展 3$ yum install php-pear.noarch 4#宽字符支持解决中文乱码问题,需要svnmanager1.10 5$ yum install php-mbstring 6#php的mysql连接库 7$ yum install php-mysql 8#安装pear库的svn操作扩展 9$ pear install VersionControl_SVN-0.3.4
安装svnmanager
下载svnmanager最新版本,svnmanager1.10 解压到/var/www/html下,改名目录svnmanager-1.10为svnmanager;
配置
使用yum安装,会自动在/etc/httpd/conf.d下增加php.conf和subversion.conf; 修改subversion.conf
1#定义网页目录为/svn 2<Location /svn> 3#开启svn 4 DAV svn 5#指定父目录位置,以后所有版本库都将存放在该目录下 6 SVNParentPath /var/svn/repos 7#开启svn版本库父目录功能 8 SVNListParentPath On 9#指定授权模式 10 AuthType Basic 11#登陆窗口标题显示提示文字 12 AuthName "Authorization Realm" 13#指定访问版本库的账户和密码存放文件,该文件需要用apache的htpasswd命令创建 14 AuthUserFile /var/svn/conf/passwdfile 15#指定访问版本库的用户和组的权限控制文件 16 AuthzSVNAccessFile /var/svn/conf/accessfile 17#要求验证有效的用户才能访问 18 Require valid-user 19</Location>
注意,/var/svn/repos及passwdfile和accessfile文件,apache用户需要有权限读写;
$ chown -R apache.apache /var/svn
复制svnmanager下config.php.linux为config.php,修改
1#svn命令的执行命令位置 2$svn_cmd = "/usr/bin/svn"; 3$svnadmin_cmd = "/usr/bin/svnadmin"; 4 5#svn的配置目录(貌似是单库时起作用) 6$svn_config_dir = "/var/svn"; 7#svn仓库的父目录 8$svn_repos_loc = "/var/svn/repos"; 9#用户密码文件 10$svn_passwd_file = "/var/svn/conf/passwdfile"; 11#访问控制文件 12$svn_access_file = "/var/svn/conf/accessfile"; 13#svnmanager数据库连接 14$dsn = "mysql://username:pwd@localhost/dbname"; 15#默认管理员名 16$admin_name = "admin"; 17#默认管理员密码 18$admin_temp_password = "admin";
重启httpd服务
$ service httpd restart
访问 http://ip/svnmanager,默认管理员名和密码登录,记得修改一次密码; 可以创建仓库和添加用户,并分配权限了。 svn的访问路径是http://ip/svn/reposname