chinespring 2008-3-12 16:14
SVN服务搭建:超强组合,简易安装Xampp+SVN+Svnmanager+Svnwebclient
超强组合、简易安装Xampp1.6.1+svn1.4.3+svnmanager1.03
最近在SVN群或论坛中很多人在搭建使用SVN工具的版本管理环境遇到很多问题,我现将以前搭建公司SVN版本管理环境的步骤方法整理出来,和大家分享下!文章也参考了一些其他网友的发表的安装步骤.希望能给大家一点帮助!如果在SVN版本管理环境搭建和SVN使用过程中遇到问题.欢迎 MI我:MSN:chinespring@hotmail.com QQ:137911637
由于2007年5月份公司确定使用Subversion版本管理工具,那时候选择了Xampp1.6.1 和Subversion1.4.3,Xampp1.6.1也是包含Appache2.2,也刚好和SVN1.4.3配合,没有产生版本冲突了.至于svnmanager1.0.3.版本是后来使用的,当时没有使用svnmanager,在svnmanager1.0发布后才使用了,从版本1.0到1.0.3都对Xampp1.6.1兼容.svnwebclient也是比较后来使用.故本文中涉及软件版本、运行环境如下:
Xampp1.6.1+svn1.4.3+svnmanager1.03+svnwebclient
运行环境操作系统:Windows Server 2003 statndard edition
一、Xampp、Svn、Svnmanager 安装
Xampp建议安装在c:\目录下,安装目录即c:\xampp.(注:下文中的建议都是本人实际操作验证的,文中用到各个软件版本请到其官方网站找到文章开头说明的对应软件版本).
Svn 建议安装到c:\目录下,安装目录即c:\svn下.
Svnmanager从官方网站:[url]http://svnmanager.sourceforge.net/[/url]下载,解压到C:\xampp\htdocs\目录下,并修改下文件名为:svnmanager.
二、修改配置文件
1、配置svn+apache服务.编辑 C:\xampp\apache\conf\目录下httpd.conf文件.(注:建议在编辑httpd.conf前,在同目录下备份http.conf文件),将httpd.conf中加载模块位置添加如下内容::
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
(注意: Xampp1.6.1中apache2.2.4版本,不需要将svn安装目录下c:\svn\bin中的mod_dav_svn.so、mod_authz_svn.so拷贝到C: \xampp\apache\modules目录下)
同时在此文件最后添加如下内容:
<Location /svn>
DAV svn
SVNParentPath C:\svn\repositories
# Allow the index page to list all the repositories it contains
SVNListParentPath On
# Require SSL connection for password protection.
# SSLRequireSSL
AuthType Basic
# Message to give to the committer
AuthName "CP SVN"
# File listing users with write (commit) access
AuthzSVNAccessFile c:\svn\svn_access_file
AuthUserFile c:\svn\svn_passwd_file
Require valid-user
</Location>
简单地解释: "Location /svn"表示,SVN库URL是http://localhost/svn的形式; "SVNParentPath C:\svn\repositories"表示:SVN库的根目录位置;"AuthName "Subversion repositories""设置询问用户名密码的对话框标题; "AuthUserFile c:\svn\svn_access_file"指定用于存放用户名密码的文件,注意这是一个文件,而不是一个文件夹.下面通过安装Svnmanager,利用Svnmanager进行svn权限管理。
2、svnmanager设置
由于Xampp1.6.1版本中没有安装pear对应的VersionControl_SVN-0.3.1,
在命令行cmd 的c:\xampp\php 运行: pear install channel://pear.php.net/VersionControl_SVN-0.3.1
C:\xampp\htdocs\svnmanager 目录下靠拷贝config.php.win,并将文件名修改为:config.php,建议备份一份config.php.win. 编辑文件config.php:
将config.php文件中:
//
// SVNManager config.php file for Windows based servers
//
$htpassword_cmd = "c:\\Progra~1\\Apache~1\\Apache2\\bin\\htpasswd";
$svn_cmd = "c:\\PROGRA~1\\Subversion\\bin\\svn";
$svnadmin_cmd = "c:\\PROGRA~1\\Subversion\\bin\\svnadmin";
//Subversion locations
$svn_repos_loc = "c:\\svn";
$svn_passwd_file = "c:\\svn\\svn_passwd_file";
$svn_access_file = "c:\\svn\\svn_access_file";
修改为:
$htpassword_cmd = "c:\\xampp\\Apache\\bin\\htpasswd";
$svn_cmd = "c:\\svn\\bin\\svn";
$svnadmin_cmd = "c:\\svn\\bin\\svnadmin";
//Subversion locations
$svn_repos_loc = "c:\\svn\\repositories";
$svn_passwd_file = "c:\\svn\\svn_passwd_file";
$svn_access_file = "c:\\svn\\svn_access_file";
简单地解释: $htpassword_cmd定义apache命令htpasswd路径,同样$svn_cmd、$svnadmin_cmd定义svn命令的svn和svnadmin路径;$svn_repos_loc定义本地svn版本库路径,$svn_passwd_file、$svn_access_file定义svn_passwd_file和svn_access_file文件路径.
将config.php文件中:
//$dsn = "mysql://svnmanager:svnmgmpw@localhost/svnmanager";
//The following location is not readable from internet by means of an .htaccess file
$dsn = "sqlite://svnmanager\\svnmanager.db";
修改为:
$dsn = "mysql://svnmanager:svnmanager@localhost/svnmanager";
//The following location is not readable from internet by means of an .htaccess file
//$dsn = "sqlite://svnmanager\\svnmanager.db";
简单地解释: $dsn = "mysql://svnmanager:svnmanager@localhost/svnmanager定义使用mysql数据库,数据库访问用户名svnmanager,密码:svnmanager,库名:svnmanager,这步骤修改完了以后打开http://localhost/phpmydamin,创建数据库svnmanager,导入(import)createtables.sql(见附件,解压),然后在创建数据库访问用户名svnmanager,密码:svnmanager.(即上文所涉及的)
现在一切都ok了,可以登录:http://localhost/svnmanager 使用用户名和密码是config.php文件中 //Administrator account 管理员帐:admin和密码:admin,第一次登录需要使用一个默认的临时用户admin 密码 admin,登录后要创建一个管理员帐号,一定要做,当你logout后,临时帐号将被禁用。
三、Svnwebclient服务端搭建
具体安装请参考:[url]http://hi.baidu.com/vb1980/blog/item/bbd434458012f025cffca3b4.html[/url](这个服务端搭建比较详细,易懂!!是[color=Blue]vb1980[/color]原创哟.)
[[i] 本帖最后由 chinespring 于 2008-8-18 22:26 编辑 [/i]]
chinespring 2008-3-12 16:21
PS:
将这个文章以帖子形式展示,没有使用附件,是方便大家阅读。帖子中附件是创建mysql数据库的sql语句,如因某某某原因不能下载,请mi俺。
bigboy2004 2008-3-13 17:49
学习了,虽然看的不是很明白
stare1603 2008-3-13 18:14
谢谢!
非常感谢搂主
chinespring 2008-3-13 23:06
[quote]原帖由 [i]assured[/i] 于 2008-3-13 14:30 发表 [url=http://bbs.scmlife.com/redirect.php?goto=findpost&pid=79636&ptid=10999][img]http://bbs.scmlife.com/images/common/back.gif[/img][/url]
看得不是很懂,希望能与楼主详细交流 [/quote]
MSN或QQ都可以MI我。
chinespring 2008-3-13 23:07
文中一些软件没有进行介绍,网络上google、baidu就知道了
[[i] 本帖最后由 chinespring 于 2008-3-13 23:10 编辑 [/i]]
晓絮 2008-3-19 09:08
十分感谢楼主,只是目前我们单位在Linux上搭建,希望能学到这方面的知识,谢谢!
lily_jessie 2008-3-19 11:37
除了SVN,其他的都要百度一下。
chinespring 2008-3-19 19:05
回复 10# 的帖子
Linux系统上搭建不会很难的,有时间可以试试!
SCMSeven 2008-6-19 19:20
今天下午正愁apache、svn、svnmanager搭建版本管理系统,楼主你太好!
好像楼主把 apache 写成appache了 哈哈
chinespring 2008-6-29 00:23
[quote]原帖由 [i]catmice[/i] 于 2008-6-28 19:17 发表 [url=http://bbs.scmlife.com/redirect.php?goto=findpost&pid=100946&ptid=10999][img]http://bbs.scmlife.com/images/common/back.gif[/img][/url]
学习中,不知道如何与door集成 [/quote]
本人还没有接触到door,在网络定会有相关集成的经验文档。
oceansky112 2008-6-29 21:12
写得挺清楚的,谢谢楼主!
zzx5804 2008-9-5 10:43
楼主辛苦了,学习学习!
转载请注明源自[url]www.SCMLife.com[/url],请保留版权. 本贴地址:[url]http://bbs.scmlife.com/viewthread.php?tid=10999[/url]