一,概述
SVN安装与配置
1 Windows下安装SVNManager
1.1 安装Apache-2.0.59、SVN-1.4.3、PHP5.2.3
1.1.1 安装步骤
安装Apache-2.0.59(备注:使用apache-2.2时,没能配置成功)到C:/SVNHome
安装SVN-1.4.3到C:/SVNHome/Subversion
安装php-5.2.3-win32-installer.msi到C:/SVNHome/PHP
停止Apache服务,解压php-5.2.3-Win32.zip,覆盖C:/SVNHome/PHP相应文件
1.1.2 此过程中自动完成的有
内容 含义
ServerRoot "C:/SVNHome/Apache2"
LoadModule dav_module modules/mod_dav.so
LoadModule dav_fs_module modules/mod_dav_fs.so(该句需手工去掉前面的#)
LoadModule dav_svn_module "C:/SVNHome/Subversion/bin/mod_dav_svn.so"
LoadModule authz_svn_module "C:/SVNHome/Subversion/bin/mod_authz_svn.so"
ServerName win0101.corp.jbhydro.com:80
DocumentRoot "C:/SVNHome/Apache2/htdocs"
<Directory "C:/SVNHome/Apache2/htdocs">
Alias /icons/ "C:/SVNHome/Apache2/icons/"
<Directory "C:/SVNHome/Apache2/icons">…
AliasMatch ^/manual(?:/(?:de|en|es|fr|ja|ko|ru))?(/.*)?$ "C:/SVNHome/Apache2/manual$1"
<Directory "C:/SVNHome/Apache2/manual">…
ScriptAlias /cgi-bin/ "C:/SVNHome/Apache2/cgi-bin/"
<Directory "C:/SVNHome/Apache2/cgi-bin">…
- BEGIN PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL
PHPIniDir "C:\\SVNHome\\PHP\\"
LoadModule php5_module "C:\\SVNHome\\PHP\\php5apache2.dll"
- END PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL
1.1.3 需手工配置的有
内容 含义
- SVN
<Location /svn/>
DAV svn
SVNParentPath "C:/SVNHome/Home/repos"
SVNListParentPath on
AuthzSVNAccessFile "C:/SVNHome/Home/auth/svn_rules"
Satisfy Any
Require valid-user
AuthType Basic
AuthName "Subversion repository"
AuthUserFile "C:/SVNHome/Home/auth/svn_users"
</Location>
拷贝C:\SVNHome\Subversion\bin\ mod_authz_svn.so(mod_dav_svn.so)到
C: \SVNHome\Apache2\modules
AddType application/x-httpd-php .php
DirectoryIndex index.html index.php
在C:\SVNHome\PHP\php.ini中去掉以下3句最前面的;
extension=php_pdo.dll
extension=php_sqlite.dll
extension=php_pdo_sqlite.dll
修改php.ini
extension_dir = "C:/SVNHome/PHP/ext" PHP对sqlite的支持
extension=php_mysql.dll
extension=php_mysqli.dll
extension=php_pdo.dll
extension=php_pdo_mysql.dll
修改php.ini
extension_dir = "C:/SVNHome/PHP/ext" PHP对MySQL的支持
1.1.4 验证Apache、PHP是否安装正确
自己写一个phpinfo.php保存在.\Apache2\htdocs下,内容如下
<?php
echo phpinfo();
?>
访问http://localhost/phpinfo.php,如果能正常显示信息,则Apache、php安装正确
1.2 安装Pear、VersionControl_SVN
运行C:\SVNHome\PHP>go-pear.bat,之后双击C:\SVNHome\PHP\PEAR_ENV.reg, 然后运行C:\ SVNHome\PHP>pear install --alldeps VersionControl_SVN-alpha(确保连上了互连网), 用命令C:\SVNHome\PHP>pear list检查是否配置正确
1.3 SVNManager的配置
解压svnmanager-0.38.zip到C:/SVNHome/Apache2/htdocs/svnmanager, 修改config.php为 config.php.unix,复制config.php.win为config.php,修改config.php,内容如下
$htpassword_cmd = "C:/SVNHome/Apache2/bin/htpasswd";
$svn_cmd = "C:/SVNHome/Subversion/bin/svn";
$svnadmin_cmd = "C:/SVNHome/Subversion/bin/svnadmin";
$svn_repos_loc = "C:/SVNHome/repos";
$svn_passwd_file = "C:/SVNHome/auth/svn_users";
$svn_access_file = "C:/SVNHome/auth/svn_rules";
//$dsn = "mysqli://username:password@hostname/databasename";(mysql用这句)
$dsn = "sqlite://svnmanager.db";(sqlite用这句)
1.4 参考文章
SVNManager Installation.pdf(svnmanager-0.38.zip中自带)
http://www.jlchannel.com/blog/?p=104
http://hi.baidu.com/houhl/blog/item/a9f983c2fd86d5190ff47763.html
http://hi.baidu.com/houhl/blog/item/5de08e778fb2b419b151b974.html
http://hi.baidu.com/houhl/blog/item/58646c36886129dfa2cc2b59.html
1.5 软件版本
Apache-2.0.59、SVN-1.4.3、PHP5.2.3(一个msi、一个zip)、mysql-5.0.18、 EMSMySQLManagerPro2851(不会用MySQL的命令行方式,所以装了它)
- Subversion相关培训及软件产品**
ESEChina和Subversion中文站长期致力于Subversion相关产品及服务的研发和推广,最新向广大客户推出了一批Subversion及软件配置管理相关的培训课程, 这些课程可以多种不同的方式向客户提供,同时还对参加这些培训的客户免费赠送受到大家广泛关注的基于Subversion构建的软件配置管理平台——SmartChange 2007。
以下是Subversion相关的课程列表,点击可查看详情并下载课程的详细介绍资料:
Subversion基础系列培训
Subversion软件配置管理高级系列培训
Subversion软件配置管理实作系列培训
Subversion软件配置管理实作系列培训——项目开发管理
Subversion软件配置管理实作系列培训——配置管理高级课题
参见
《版本控制之道-使用Git》赏析--附录A-Git命令快速参考|
Mercurial与TortoiseHg使用入门教程| Mercurial的介绍及简要入门| 放弃Mercurial和TortoiseHg,转用git(msysGit+TortoiseGit)| SVN+GIT=鱼与熊掌兼得| Git-SVN配合使用之简明教程|
分布式的,新一代版本控制系统Mercurial的介绍及简要入门|
推荐私人免费项目管理及SVN服务:unfuddle| 免费的SVN空间|
DreamLand - 【原创】用subversion(SVN)进行版本管理.mht 674k subversion是绿色软件么?|
远程修改基于apache配置的Subversion密码的工具ApachePasswd
Subversion Administration: A Web Interface for Administering Subversion Repositories
SVNManager is a webbased tool to administer a Windows/Linux/Unix Apache WebDAV Subversion repository server. 使用SVNManager管理使用SVN 从此SVN使用了http协议
用 Subversion 跟 Google Code 作版本控制 (二)
CVS:版本控制的开放标准
http://dev.csdn.net/develop/article/16/16370.shtm
应用版本控制软件管理软件开发