http://www.blogjava.net/evanwhj/archive/2006/04/06/39498.aspx 在前面一篇文章中,痛诉了安装ViewVC for Subversion的种种不便之处,晚上又到Subversion的网站上闲逛,然后看到http://subversion.tigris.org/links.html中有一个纯Java的客户端库,于是就顺带逛到了JavaSVN的网站上,然后在其页面底部发现了两款用Java开发的Web客户端:SVN Web Client和Sventon,心想自己不就是吃这碗饭的嘛,总归要比用Python开发的ViewVC来得顺手吧,于是就试着下载安装了一下。果然是自家人啊,安装使用得心用手,几乎就没有遇到一点问题,哈哈!所以,具体的安装配置就不罗嗦了,有兴趣的下载一个一装就知道了。这里讲几点粗浅的体会:
SVNWebClient sventon 最新版本2.5.0,界面较美观 当前为1.0 RC2,界面相对比较简单,但比ViewVC还是要好一点 支持多个仓库,可以以不同的用户身份进行登录
多仓库的配置参考我这篇文章。 没确认是否支持多个仓库,且只能以统一的身份进行登录,在服务器端设定 支持文件和目录的更新(包括创建、删除和修改),所以是个真正的客户端 只能浏览
只支持http协议(按其论坛上的说法,应该是支持svn协议了,不过我没有试:(。其nightly版本已改善对svn协议的支持,但由于使用旧版javasvn的缘故,提交时有问题,所以,不建议采用svn协议,详见我这篇文章 (updated at 2007.1.25)
支持http、svn、svn+ssh 支持文件比较,语法高亮显示声称采用 enscript,但实际上不起作用。 其nightly版本已改用 JHighlight但需要按照 楼下 朋友的建议,否则源码中的中文会出现乱码。(updated at 2007.1.25) 支持文件和目录?比较, 语法高亮显示采用 JHighlight,不用额外安装配置就能使用,特别方便 中文支持很好,日志、文件名和目录中的中文都显示正常,文件中的中文也没有问题 中文支持不是很好,日志、文件名和目录中的中文都不能正常显示,但文件中的中文没有问题
在其RC2 Build Rev 506中已经解决了中文的问题,速度还真快啊:)!可以直接去其SVN仓库下载最新的版本或者等正式版出来。updated at 2006-4-11 -- 支持目录扁平显示,想想不用一级一级目录点下去是多么惬意的一件事啊;
支持文件名和目录名搜索,暂时没觉出好来;
支持RSS,这个也暂时没有试验 总而言之,有了这两款纯Java开发的Web程序,如果我用SVN,是再也不会留恋ViewVC的了。个人推荐使用 sventon,相信其1.0版推出的时候能够解决中文的问题。
sventon的截图:
SVNWebClient的截图:
http://blog.tanggaowei.com/2006/06/svn-web-client.html SVN Web Client中文修订版下载(作者 Neot 写于 2006-06-30 ) SVN Web Client是Subversion(当前最流行的版本控件软件之一)的Web客户端软件。虽然Subversion已有很好的桌面客户端软件 TortoiseSVN,但是,为了适应不同项目参与者的需求,Web客户端还是有它\”不用安装\”和\”网络共享\”的优点。而且SVN Web Client也是一个很容易上手的Web客户端。最初,我是看了Evan的一篇文章\”两款好用的SVN Web Client\”,才对SVN Web Client感兴趣的。在使用的过程中,几次遇到\”中文问题\”。幸亏得到Evan帮助,才得以解决。在此,我要特别感谢他!其实Evan的解决方案,在更早的时候,就已经在他的Blog上发布了。只可惜我一直没有时去实践它。前几天有空,按他的方案实际操作了一把,效果立杆见影。到此为止,我在SVN Web Client上遇到的中文问题,也已得到全部解决。为了方便大家,我将修订后的SVN Web Client 2.5.1重新打包,以供有中文需求的朋友使用。修改的具体内容如下:
- $svnwebclient\\WEB-INF\\web.xml文件126行,将DefaultEncoding属性修改为GB2312,以支持中文URL的访问。
- $svnwebclient\\WEB-INF\\lib目录,添加commons-io-1.2.jar和commons-fileupload-1.1.1.jar文件包, 并删除原有的commons-fileupload-1.0.jar文件包。
- $svnwebclient\\WEB-INF\\classes\\org\\polarion\\svnwebclient\\util目录,用Evan提供的Uploader.class文件替换原有文件。
注意:还有一个中文设置,虽然svnwebclient的readme里讲了,但我还是想再 说明一下。那就是,要在独立运行的Tomca中,修改server.xml文件,将文件中8080端口(自行对应)的标签设置成URIEncoding=\”UTF-8\”,以支持中文路径。如果Tomcat集成到了Apache,则可参照\”Apache+Tomcat中支持\”UTF-8\”编码的中文地址\”文章。下载地址: svnwebclient-2.5.1.zip
http://subversion.tigris.org/links.html#clients (索引)svn客户端。。。。
- sventon - Java web application for browsing Subversion repositories http://www.sventon.org/
- WebClient for SVN - A web interface for Subversion repositories. Offers browsing and simple write operations. http://www.polarion.org/index.php?page=overview&project=svnwebclient
- See also: Trac and Collaboa in the Higher-level tools section above, which include repository browsing along with other functionality. 【虎.无名:Trac基于Python,而Collaboa基于Ruby】
http://www.cnblogs.com/zealic/archive/2008/01/13/1037414.html Trac 手记(三) : 应用 Trac
1) 基本概念Trac 中的单元:
- Milestone(里程碑) :这个好理解,不做解释。
- Version(版本) :项目的版本。
- Component(组件):项目中的组件。
- Ticket : 这个有人翻译为传票,有人翻译为任务单,我都觉得不妥,因此不做翻译。
- Ticket type :Ticket 的类型,默认有 defect(缺陷)、enhancement(改进)、task(任务)。
- Priority(优先级) :Ticket 的优先级。
- Resolutions(解决方式) :Ticket 的解决方式,当要关闭 Ticket 时的选择。
- Severity(严重程度):Ticket 的严重程度。
关系图如下:
由于 Trac 的灵活性,我们使用 Trac 来进行项目管理时,有很高的自由度,上述单元皆是可自定义的,比如 Ticket 默认有如下类型:Defect、Enhancement、Task。 偷懒的人一般就默认使用这三个类型,如果是项目要求高一些,可以定义一些扩展的 Ticket 类型,如 Patch、Translate、Test,当然这只是举例说明,还是需要根据项目的具体需求来进行定制。 大多使用 Trac 进行项目管理都有一个中心,某些团队以 Milestone 为中心,有些以 Version 为中心,有些以 Component 为中心,最后就是以 Ticket 为中心的,其松散程度是逐步增加的。 Ticket 是 Trac 中最核心的单元,整个 Trac 都是围绕 Ticket 进行的,在应用 Trac 时,Ticket 可以让团队中的人分工更为明确,比如市场调查可以只负责 Create Ticket、Edit wiki,开发人员、测试人员根据自己的能力各自完成自己所属的 Ticket,最后以完成某个中心为终结;通过里程碑,管理者也可以更快,更直接的了解到项目进度从而制定相应计划;通过 Wiki ,新进成员也可以更快速的融入项目。 不过这些都是以真正的应用 Trac 到项目的开发、管理、测试为前提。 很多应用 Trac 进行管理的人都说:现在最兴奋的事,不是完成一个一个的功能,是关闭一个又一个的 Ticket,看着里程碑逐渐接近 100%,工作热情也特别高涨。
2) 权限管理
Trac 中的权限划分的很为细致,并且有用户组的概念,但是 Trac 并不包含用户信息,通常都是与 Apache 集成权限认证来获得用户信息。 当创建了一个 Trac 环境时,默认权限分布如下:
User Action
------------------------------
anonymous BROWSER_VIEW
anonymous CHANGESET_VIEW
anonymous FILE_VIEW
anonymous LOG_VIEW
anonymous MILESTONE_VIEW
anonymous REPORT_SQL_VIEW
anonymous REPORT_VIEW
anonymous ROADMAP_VIEW
anonymous SEARCH_VIEW
anonymous TICKET_VIEW
anonymous TIMELINE_VIEW
anonymous WIKI_VIEW
authenticated TICKET_CREATE
authenticated TICKET_MODIFY
authenticated WIKI_CREATE
authenticated WIKI_MODIFY
anonymous 代表匿名用户的权限,authenticated 代表登录用户所拥有的权限,权限信息都很易懂,就不做解释;默认配置下,这是较为安全的,但是这样我们无法管理这个任务仓库,必须先分配一个管理员。
D:\Python\Scripts\trac-admin D:\ALM\Trac\MyProject permission add zealic TRAC_ADMINTRAC_ADMIN 是最高级别权限,有了这个权限,登录名为 zealic 的用户就可以管理这个项目的所有信息了。 登录 Trac 以后,在管理页面中 Trac 提供了 Permissions 选项,可以以可视化的方式更改权限信息。
3) 集成有了趁手的工具,我们当然愿意这个工具与旧有工具完美结合,以产生更高的价值。 好比 .Net 下的 TDD 拥有了 TestDriven.Net,提高的生产力可不是几句话就能够形容的,我也极度期盼 .Net 能够提供与 Trac 集成的插件。 相比之下,我极羡慕 eclipse 3.3 中集成的 Mylyn,可以很方便的与 Bugzilla,JIRA,Trac 集成;好吧,我承认,我希望有“逸士”能够造一个 NMylyn 或者 Mylyn.Net 供我们使用。 Trac 通过 xml-rpc 提供交互接口,也许某天,我会来做这个“逸士”;不过,似乎很难。
4) 推荐资料这里 是台湾某教师为学生制作的 Trac PPT 教程,较浅显易懂,各位可以参考一下。 这里 是台湾的某人写的一系列关于 Trac 的文章,可以参考一下。
5) 结束语
如果您所在的公司仍然处于项目管理混乱,失败率高的情况,我极力推荐您使用 Trac、Bugzilla 等 ITS 进行管理。 本人才疏学浅,加之时间仓促,Trac 只能介绍到这里,如果您还有什么不懂得地方,请联系我,我将尽力帮助你。 过段时间我会放出自己基于 Trac0.11b1 制作的 EasyTrac,简化 Trac 的部署,供需要的人使用。
警告 : 本文所使用的是 Trac 0.11b1 版,不保证对文章内容对其他版本适用。 同样也不推荐你在实际环境部署使用该beta版,如出现任何问题,概与本人无关。 如果你存在任何有关问题,请 mail 我 : rszealic{at}gmail.com
版权 : 保留对本文的一切修改、发布等权力。任何人想要转载本文部分或全部内容时,必须保留包括作者 Zealic、出处、版权,共三项信息。对本文的参考引用,则不受限制。
参考)
Trac Usage:http://wiki.woodpecker.org.cn/moin/TracUsage
Trac 中的 Ticket系统:http://www.cnblogs.com/HanN1984/archive/2007/08/09/840575.html
Bugzilla 培训手册--操作说明:http://liuyu.blog.51cto.com/183345/49829
Why Programs Fail:系统化调试指南:http://book.csdn.net/bookfiles/306/
其他:http://www.cnblogs.com/HanN1984/archive/2007/08/09/840575.html 、http://tech.idv2.com/2007/02/11/trac-install-windows/ posted on 2008-01-13 22:23 Zealic 阅读(6475) 评论(14) 编辑 收藏 网摘 所属分类: ALM
http://eastviking.javaeye.com/blog/53134 2007-02-08 Collaboa的安装与配置
Trac是一个功能强大的版本和BUG跟踪系统。 Collaboa是一个用ROR编写的与Trac功能类似的系统。 Collaboa的安装与配置分为以下步骤(当前版本0.6.1): 一、ruby与rails环境,请参照其它文章 。二、安装SWIG 。SWIG 是一种接口编译器,专门用来连接C/C++程序和脚本语言的,它可以直接处理C/C++ 头文件里面的声明,生成包装代码。 1、下载: http://sourceforge.net/project/showfiles.php?group_id=1645 选择适合自己操作系统的版本,我选择的是windows版本 2、解压下载文件 3、在windows中设置环境变量: 以Ruby 1.6.4为例: RUBY_INCLUDE: D:\ruby\lib\ruby\1.6\i586-mswin32 、RUBY_LIB: D:\ruby\lib\mswin32-ruby16.lib