安装Apache+Subversion+ViewVC学习笔记
很长一段时间没有动笔了,今天写点关于工作中的备望录,古人语:“好记性不如个烂笔头”,以备将来遗忘。首先简单介绍各软件的背景,在安装使用过程中需要注意的一些细节,给正准备选择安装使用Apache+Subversion+ViewVC 的朋友一些参考帮助,或已使用过的朋友回一此回顾,有不足之处,请留言或者评论,万分感谢各位朋友光临!
Apache音译为阿帕奇,是北美印第安人的一个部落,叫阿帕奇族,在美国的西南部。相传阿帕奇是一个武士,他英勇善战,且战无不胜,被印第安人奉为勇敢和胜利的代表,因此后人便用他的名字为印第安部落命名,而阿帕奇族在印第安史上也以强悍著称。Apache是世界使用排名第一的Web服务器。它可以运行在几乎所有广泛使用的计算机平台上。
CVS 在开源软件世界,并行版本系统(CVS)一直是版本控制长久以来的唯一选择。事实证明,这是个正确的选择。CVS本身是自由软件,不加限制的处事风格,对网络化操作的支持(众多身处不同地方的程序员可以共享他们的工作),都非常符合开源世界的协作精神。CVS和它半混乱状态的开发模型已成为开源文化的基石。但是,和其它许多工具一样,CVS开始显露出衰老的迹象。而Subversion,正是以CVS继任者的面目出现的新型版本控制系统。
Subversion的设计者们力图通过两方面的努力赢得CVS用户的青睐:保持构建开源软件版本控制系统的方式(以及视觉和感觉上)与CVS尽可能类似,同时尽力弥补CVS许多显著的缺陷。这些努力的结果使得从CVS迁移到Subversion不需要作出重大的变革,Subversion确实是非常强大、非常有用和非常灵活的工具。
ViewVC 是一个浏览器接口为CVS 和Subversion颠覆版本管理贮藏库。它引起templatized HTML 提出可航行的目录、修正, 和变动日志目录。它可能显示文件的具体版本并且diffs 在那些版本之间。基本上, ViewVC 比平均原文命令线提供大多数报告象您更加俏丽期望在您的版本管理工具外面的功能。
******************************************************************************************
下面开始详细讲解如何安装的整个集成过程:
在所有的Subversion服务器配置方式中,基于Apache的是最灵活的。虽然配置起来有一点点复杂,但是它提供了其它方式所没有的好处:
安装过程:
安装Apache前,你要有一台运行Windows2000、Windows XP + sp2或Windows2003的电脑。警告:请注意,没安装Service Pack 2的Windows XP将导致错误的网络数据从而破坏你的版本库!
从/i最新版本的Apache Web服务器。确保你下载的版本大于2.0.54。2.0.54版本的Apache将不能与Subversion 及以上的版本配合工作。而且,小于2.0.54的Apache也因为在windows上的编译存在一个bug而导致不能与subversion1.2配合使用。
一旦你已经有了Apache的安装程序,你可以双击它,它将引导你完成整个安装过程。路径为自己的个人喜好选择进行安装D:\Apache Group\Apache2。请确保你输入正确的服务器URL(如果你的服务器没有DNS名称,你可以直接输入IP地址)。我建议你将Apache安装成 for all Users,on Port 80,as a service。注意:如果你已经有一个IIS或者其它的程序使用80端口,安装可能会失败。如果是这样,你可以到程序目录下的Apache Group\Apache2\conf目录中到文件f,将其中的Listen 80改成一个不用的或者你非常喜欢的端口,比如Listen 18080。然后重新运行这个安装程序,这次应该不会再有问题了。
安装Apache过程中需要设置以下参数:
Network Domain: 10.83.2.194
Server name: 10.83.2.194
Administrator's Emai Address: bill.yin@mic.tw
配置好之后将完成Apache的安装过程,现在你可以在你的浏览器中键入 loccalhost,如果呈现了一个已经配置好的网站,那么祝贺你,你的第一步Apache就安装成功了。
接着安装Subversion:
安装Subversion从这里下载 www.iusesvn/bbs/download/svn-win32-1.4.0.zip。运行Subversion安装程序,如果安装程序能够识别你已经安装了Apache,那么你的安装基本上就OK了。如果它不能,那么你要做一些额外的手动配置步骤。
注:如果你先安装Apache,再安装Subversion,正常情况下下面的工作Subversion安装程序已经帮你完成了,进入Sibversion的安装目录(通常为你的安装路径,我选择D:\Subvers
ion),到文件httpd/mod_dav_svn.so和mod_authz_svn.so,将它们拷贝到Apache的modules目录(为你选择安装的路径D:\apache group\apache2\modules)。
从Subversion的安装目录拷贝文件libdb43.dll到Apache的modules目录。
使用如记事本之类的文本编辑器编辑Apache的配置文件(通常为D:\apache group\apache2\f),修改以下内容:
下载apache去掉以下行的注释(将开头的#删除):
#LoadModule dav_fs_module modules/mod_dav_fs.so
#LoadModule dav_module modules/mod_dav.so
在LoadModule节的最后添加以下两行,注:如果你先安装Apache,再安装Subversion,正常情况下会自动配置好下面的步骤,如果没有自动配置好,就要手动去添加如下两行设置:
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
接着需要建立SVN所需的Repository(保存文档各个版本的数据库)
在服务器端建立一个空目录,比如“E:\SVNProjects\Project1”。建立Repository的具体方式是:在subversion安装目录下的\bin子目录下有一个文件,在DOS窗口下进入该\bin目录,并执行“svnadmin create --fs-type bdb E:\SVNProjects\Project1”。之后你会发现原本是空目录的“E:\SVNProjects\Project1”下多出了几个目录和几个文件。这些目录和文件就是用来存储文档各个版本的数据库。
***除了用命令行方式建立Repository外,还可以用TortoiseSVN建立,不过这要求在服务器端也安装TortoiseSVN。建立Repository的具体方式是:在“E:\SVNProjects\Project1”目录上右击鼠标,TortoiseSVN->Create ,然后弹出一个对话框选择Berkeley Database(BDB),然后点OK按钮。
需要配置Repository才能正常的运行,建立Repository后,还应该对Repository进行配置,主要的目的是控制访问权限和添加Repository的用户。“E:\SVNProjects\Project1\conf\svns
f”文件就是该Repository的配置文件。它是一个典型的INI文件,虽然该文件并不是以INI作为扩展名。用文本编辑器打开它后,可以看见一些文本,该文件以“#”开始的行都是注释行。
将“#[general]”行的“#”删掉,“#anon-access = none”“#auth-access = write”“#password-db = passwd”行也删掉“#”,注意,只是删掉“#”字符,不要把整行都删了。“anon-access = none”是指不允许匿名访问Repository,不管是读操作还是写操作。“auth-access = write”表示认证的访问允许写操作,当然读操作就更允许了。“password-db = passwd”表示用户名及用户密码存在一个叫passwd的文件里,这个文件也在“E:\SVNProjects\Project1\conf”目录下,用文本编辑器打开后,将“# [users]”的“#”字符删掉,然后在文件的最后添加一个新行,在该行写上用户名和密码,格式为“xxxx = yyyy”其中“xxxx”表示用户名,“yyyy”表示密码,一行只能设定一个用户,要设定多个用户,请再起新行。
启动Subversion服务器
Subversion提供了三种服务器模式,这里介绍其中的一种,它是subversion自带的一种轻量级的服务器,该服务器启动后,在服务器端的3690端口监听客户端的连接请求(这是默
认情况下,如果你有其他程序占用了3690端口,可以用“--listen-port”参数指定服务器监听端口)。服务器的具体启动方式是:在subversion安装目录下的\bin子目录下有一个文件,该文件运行时可带参数,常用的参数有两个一个是“-d”,该参数表明服务器作为一个精灵进程一直运行,直到手动结束该程序。另一个参数就是“-r”,该参数指定服务器进程寻Repository的根路径。在DOS窗口下进入\bin目录,并执行:
“ -d -r E:\SVNProjects”。服务器这时就启动了。“-r E:\SVNProjects”参数的作用是:当在客户端用“svn://xxx/project1”(xxx可以是服务器端主机名,也可以是服务器端的ip地址)访问服务器的Repository时,服务器会知道你要访问的Repository路径是“E:\SVNProjects\Project1”。如果当我有两个完全不相干的项目要进行版本控制时,可以再建立一个空目录 “E:\SVNProjects\Project2”,并在其中再建立一个Repository,此时客户端就可以用“svn://xxx/project2”访问“E:\SVNProjects\Project2”下的Repository。至此,恭喜你SVN服务器端配置也就完毕了。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论