`

Windows 2003+IIS6下安装ViewVC for Subversion的苦难历程

 
阅读更多

前几天好奇,也刚好得了点空闲,然后就想看看ViewVC对Subversion的支持程度,于是就想装个玩玩。好死不死的,在我的VMWare Workstation上刚好有个Windows Server 2003,心想,就它吧,可就这么一偷懒,折腾了我好几天,最终还是只能算将就着把它给装上了。

安装环境:Windows Server 2003, IIS 6, Suberversion 1.3.0, ViewVC 1.0-Dev

安装步骤:

一、首先安装Subversion,按照Mere-Moments Guide to installing a Subversion server on Windows的介绍自然应该是很容易就搞定安装和简单配置的,然后往仓库中添加几个文件,然后做点更新,以便从ViewVC中能看到点东西;

二、安装ViewVC
1. 既然装了Subversion,那就学以致用,直接从http://viewvc.tigris.org/svn/viewvc/trunk/检出个最新的版本下来就行,或者到http://www.viewvc.org/nightly/下载个打包的版本;
2. 如果你有阅读Readme的习惯,那恭喜你,基本上完成基本的安装配置是没有问题啦;当然,你一定要看完整个REQUIREMENTS这一节再决定下载安装Python的什么版本,很不幸,Subervsion现在提供的Python包(Python bindings)只支持Pythong 2.3,所以,如果你一开始下载安装的是Python 2.4,就得重新下载安装了:):
Subversion Python Bindings: http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91
Python 2.3: http://www.python.org/ftp/python/2.3.5/Python-2.3.5.exe
pywin32: http://prdownloads.sourceforge.net/pywin32/pywin32-208.win32-py2.2.exe?download
3. 安装好这些后,将Python的安装目录添加到系统路径中;
4. 在刚才下载的ViewVC目录下执行:python viewvc-install,第一个提示后指定ViewVC的安装目录,第二个提示直接回车就行。

三、ViewVC基本配置
由于ViewVC自带服务程序,因此,最好是先启动ViewVC服务程序,如果ViewVC自己运行正常的话,那就不用考虑ViewVC的配置问题了,想当初俺就没有充分利用这一点,而在IIS和ViewVC之间反复修改参数,都不知道是怎么死的。
1. ViewVC最简单配置
打开viewvc.conf,修改下面几行:
将cvs_roots = cvs: /home/cvsroot注释掉;
#svn_roots = svn: /home/svnrepos 改成类似于 svn_roots = mytest: C:/svn_repos/mytest,其中mytest是你指定的仓库名,冒号后面跟的是仓库所在的路径;
default_root = cvs注释掉,这样你至少可以看到仓库列表。
2. 双击ViewVC/bin下的standalone.py,就可以启动ViewVC自带的Web服务,然后在IE中输入http://localhost:7467/viewvc就应该可以看到仓库列表了,到这一步为止,我没有碰到什么障碍,所以,没什么可以提示的了;
3. 点击任何一个仓库,就应该可以看到仓库中的目录或文件了,但是,如果你在IE中看到如下的提示:
ImportError: No module named svn 那说明你没有安装Subversion的Python包,或者将其放到了Subversion的目录下了;
'module' object has no attribute 'SubversionRepository' 那说明你将Subversion的Python包复制到了viewvc的vclib下,并且覆盖掉了viewvc自己的文件;那么,要怎样安装这个包呢,ok,将其复制到ViewVC或者Python的lib目录下吧,唉,当初整这个也费了我不少周折,惭愧,谁叫我是个Python盲呢:(

四、安装diff和enscript工具
就这样看看,也已经比Subversion自带的Web界面好很多了,当然我们还应该挖掘ViewVC另外两个基本功能:比较和语法高亮显示,这样才显得专业嘛。
1. 到http://gnuwin32.sourceforge.net逐一下载以下工具:DiffUtils, enscript, libintl, libiconv, sed将其一股脑全部安装好,将其bin目录添加到系统路径中;
2.打开viewvc.conf,将use_enscript =0改成1,重新启动standalone.py;
3. 然后你就可以比较任意两个版本的差别了;
4. 不过,当你要浏览某个文件时,你会看到一个提示,说:libintl-2.dll或libiconv-2.dll之类的找不到,啊,先在ViewVC自带的Web服务下运行是多么的明智啊,如果你直接在IIS中调试,可就看不到这个提示了,这又是我N天的代价:(;
5. 为什么会这样呢,不是安装了Readme中提到的所有gnuwin32的包吗?不过,你是不是象我一样下的都是最新的版本呢?记得enscript的版本吗?这个可是个老古董,2003年推出的,而其它的基本上是05年、06年的,不兼容啊!安全起见,当然是安装与enscript同时代的包啦,当然,我将gnuwin32/bin目录下的libiconv2.dll和libintl3.dll直接复制一份,改名成libintl-2.dll和libiconv-2.dll竟然也ok,看来,老外们仅仅是在文件名上没有向后兼容,函数名还是基本上一致的,所以动态链接有动态链接的好处,而静态链接也不失为一个取巧的办法啊;

行文至此,ViewVC及相应工具的安装告一段落,不要再去考虑ViewVC的安装配置问题了,ViewVC的Readme也可以关掉了。接下来就是要在IIS上配置了。

五、IIS6设置
1. 创建一个虚拟目录viewvc,直接指向ViewVC/bin/cgi就可以了,在虚拟目录访问权限步骤勾选执行权限,如下所示;

2. 在刚创建的虚拟目录上点击右键,选择属性,点击配置按钮,在应用程序配置对话框中点击添加,填写如下所示的内容;

3. 切换到文档页,将viewvc.cgi设置为默认内容文档。

在Windows 2000下,到这里就可以了;但是在2003下,还要做下面两步。

4.点击Web服务扩展,理论上应该添加一个新的Web服务扩展,然后仅允许这个服务,但我没有弄出来,所以,直接就允许所有未知cgi了,这也是我一开始说将就着用来着。到这里,基本上可以运行ViewVC了,但做比较和语法高亮显示有问题,如果你想试试,还得先重启一下机器,这也是让我花了N天的代价的地方,如果你真按ViewVC的Readme中的Troubleshooting的建议左改右改的话,估计最后还是无计可施。当然,在它的Troubleshooting最后有个表,其中有一项提到如果修改了系统变量的话,需要重启机器,我是重启完后才体会到这一点的:(;

5. 按默认设置创建一个新的应用程序池,在新建的应用程序池上点击右键,选择属性,选择标识,在预定义帐户中选择本地系统;然后再修改viewvc虚拟目录的属性,将应用程序池改为刚创建的应用程序池,重新启动机器。

到这里,基本完成ViewVC在IIS6上的安装,其中辛酸自知啊!

六、不足
1. ViewVC for Subversion不提供类似CVSGraph的图形化版本树功能;
2. 如果提交的日志中有中文,将显示乱码,需要手工设置浏览器编码,或者修改ViewVC的模版templates/include/header.ezt,在紧挨着<head>的下方添加<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />,因为Subversion使用的是utf-8编码;
3. 如果你的源代码中有中文,则日志和源代码不能两全,其中必有一个是乱码,难不成你源代码也用utf-8编码?如果你会Python,则建议修改一下ViewVC代码,将日志先由utf-8转换成gb2312,据说小海龟就是这么做的。

分享到:
评论

相关推荐

    viewvc subversion

    ViewVC -- Viewing the content of CVS/SVN repositories with a Webbrowser. Please read the file INSTALL for more ...And see windows/README for more information on running ViewVC on Microsoft Windows.

    Win安装svn Apache viewvc

    Win安装svn+Apache+viewvc 内有图片,可供参考,是不是你想要的结果, 可以通过HTTP 查看你的板本库的信息和文件信息,还有文件的板本号,有的功能我也不会用,也不太知道,自己参悟吧,都在学习中.

    架设svn+viewvc 服务器

    架设 svn + viewvc 服务器所需软件: 1).ActivePython-2.5.4.4-win32-x86 (注意是:2.5版本) 2).CollabNetSubversion-server-1.6.6-4.win32 (1.6版本) 3).TortoiseSVN-1.6.6.17493-win32-svn-1.6.6 (SVN海龟客户端) 4...

    Win安装svn+trac

    安装Apache+Subversion+ViewVC学习笔记

    CollabNetSubversion-server-1.7.3-1-Win32.exe [服务器端+客户端]

    CollabNet 官方提供的用于 Windows 操作系统 Subversion 服务器端以及客户端。 安装包内已经包含了当前最新版本的 Apache 2.2.22 (Win32) Server version: Apache/2.2.22 (Win32) Server built: Feb 13 2012 03:12:...

    viewvc:ViewVC是CVS和Subversion版本控制存储库的浏览器界面

    ViewVC-版本控制浏览器界面ViewVC是CVS和Subversion版本控制存储库的浏览器界面。 它生成模板化HTML,以显示可导航的目录,修订和更改日志列表。 它可以显示文件的特定版本以及这些版本之间的差异。 基本上,ViewVC...

    CollabNetSubversion-server-1.7.1-3-Win32.exe [服务器端+客户端]

    CollabNet 官方提供的用于 Windows 操作系统 Subversion 服务器端以及客户端。 安装包内已经包含了当前最新版本的 Apache 2.2.21 (Win32) Server version: Apache/2.2.21 (Win32) Server built: Nov 18 2011 02:59:...

    Docker-ViewVC:使用源代码存储库浏览器 ViewVC 创建 Docker 容器

    在 apache2 中运行 viewvc 做什么/配置: Dockerfile 期望当前目录中的文件“subversion_conf.tar”并将其解压缩到 www-data users 目录中。 此存档应包含一个子目录“.subversion”,其中包含保存的身份验证数据...

    CollabNetSubversion-server-1.7.2-1-Win32.exe [服务器端+客户端]

    CollabNet 官方提供的用于 Windows 操作系统 Subversion 服务器端以及客户端。 安装包内已经包含了当前最新版本的 Apache 2.2.21 (Win32) Server version: Apache/2.2.21 (Win32) Server built: Nov 29 2011 22:09:...

    ViewVC (formerly ViewCVS)-开源

    ViewVC是基于Web的版本控制存储库浏览器,当前支持CVS和Subversion存储库。 现在,项目开发位于https://github.com/viewvc/viewvc/。

    viewvc-1.1.15

    viewvc-1.1.15 开源软件版本管理的常用工具,例如kettle等开源软件的版本管理就是使用viewvc

    ViewVC 1.2-dev

    图形化显示Subversion和CVS代码的工具。

    viewvc-源码.rar

    viewvc-源码.rar

    CollabNetSubversion-server-1.7.1-1-Win32 [服务器端+客户端]

    CollabNet 官方提供的用于 Windows 操作系统 Subversion 服务器端以及客户端。 安装包内已经包含了当前最新版本的 Apache 2.2.21 (Win32) Server version: Apache/2.2.21 (Win32) Server built: Oct 21 2011 01:58:...

    CollabNetSubversionEdge-5.2.4_setup-x86_64_0_0.7z

    一个版本控制软件的集成包,集成了包括 Subversion、Apache 和 ViewVC 三个软件。安装简单、管理方便

    CollabNetSubversionEdge-5.2.3_linux-x86_64.tar.gz

    It also integrates the popular ViewVC repository browsing tool so that users can view repository history from a web browser. 现公司我们给开发人员部署的正是CSVN,简单易用,权限管理,备份等管理通过...

    CollabNetSubversion-server-1.6.17-4.win32.exe

    CollabNet 官方提供的用于 Windows 操作系统 Subversion 服务器端以及客户端。 安装包内已经包含了当前最新版本的 Apache 2.2.19 (Win32) Server version: Apache/2.2.19 (Win32) Server built: May 30 2011 20:49:...

    CollabNetSubversion.exe-part1

    目前该公司推出了一个全新的项目 Subversion Edge,该项目并不是一个新开发的项目,而是将 Subversion 、Apache HTTP Server 以及 ViewVC 三个项目打包在一起,简化用户安装和管理配置版本控制系统的过程。

    CollabNetSubversionEdge-5.1.0_setup-x86_64

    CollabNetSubversionEdge-5.1.0_setup-x86_64客户端官网地址,Subversion Edge 是一个版本控制软件的集成包,集成了包括 Subversion、Apache 和 ViewVC 三个软件。安装简单、管理方便。

    DDKWizard 安装包及ddkbuild_cmd,ddkbuild_bat(用于DDK开发环境搭建)

    Visual Studio Professional .NET 2003 with WNET DDK and DDKBUILD.CMD on Windows 2003 Server R2 Standard Visual C++ 2005 Express with WNET DDK and DDKBUILD.CMD on Windows 2003 Server R2 Standard Visual ...

Global site tag (gtag.js) - Google Analytics