Trac 工具使用手册
Trac 使用手册
作者:强克明
1. 前言
Trac是一个为软件开发项目需要而集成了Wiki和问题跟踪管理系统的应用平台,是一个
开源软件应用。Trac以简单的方式建立了一个软件项目管理的Web应用,以帮助开发人员
更好地写出高质量的软件;Trac应用力求不影响现有团队的开发过程。
Trac是采用Python语言开发的,因此Trac的在运行的时候,需要有Python环境的支持,
在本手册中Python采用2.5,Trac采用0.11Beta版本、Apache 2.2。
整个Trac是建立在WIKI和TICKET基础上的,WIKI在工具中充当书写文档、TICKET等的语
法,它包含了一些类型HTML语法,但简化了的语法格式,在Guide文档中有语法的详细介绍。
WIKI的具体含义将在“Trac中的WIKI”一节中进行详细介绍。TICKET是Trac中的另一个重要
的组成部分,Trac使用Ticket传递信息,信息传递的单位个体也以Ticket作为标准。一个
Ticket是具体需要做的事情的载体,也当然包含很多描述性信息。
Trac是以面向进度模型为项目管理模型的,很明显的特点就是它以里程碑(Milestone)
方式进行项目管理的。每个里程碑中的具体要做哪些事情,就使用Ticket来进行定义、跟踪
等。里程碑是什么呢?里程碑是一些事件,我们设立这些事件是为了表明当这些事件发生的
时候,我们的工作已经达到了某种程度。为什么我不用时间点呢?原因在于使用时间点往往
让人误以为,里程碑是按照时间来设计的,而不是按照事件来设立的。
另外,Trac做一个SCM配置管理平台,意味着它有良好的扩充性。通过WebAdmin界面中
的Plugin功能,可以很方便的安装下载的插件,也可以通过此功能查看已经安装的插件,并
可对其中的插件进行启用或停用操作。
2. Trac 体系架构
Trac 的运行体系:
第 1 页 共 15 页
Trac 工具使用手册
Trac 构成体系图:
3. Trac 权限体系
Trac 的权限体系也是比较完备的设计,默认情况下 trac 有 anonymous 和 authenticated 两
种性质的用户组。Anonymous 即匿名组,默认情况下只要能访问 apache 提供的 trac 实例服
务,那么就属于这个组,这个组浏览 trac 实例界面时,将根据 trac 实例设定的权限方案提供
可以浏览的内容。
在通常情况下,我们都给某个 trac 实例指定 admin 用户,即权限最大的用户。可以通过
trac-admin 实例名 permission add 用户名 TRAC_ADMIN,命令在 dos 提示符下创建此实例
的管理员帐户。需要注意的是权限是区分大小写的。设置成功后,此用户验证登录后,将能
够看到 Admin 这个 webadmin 管理界面。可以通过此界面可视化的对 trac 实例进行管理。如
下图:
第 2 页 共 15 页
Trac 工具使用手册
Trac 使用 Subject 和 Action 方法绑定来进行赋权。Subject 即操作对象,Action 即可以执
行的动作。通过这种关系映射,从而实现 Trac 的权限管理。默认情况下 Trac 包含 anonymous
和 authenticated 两个 Subject,通过前面的 trac-admin 后,将出现第三个 subject,即用户名。
如下图:
对于 Subject 具体的赋权操作,可通过下图完成。通过对 Subject 的分配 Action 即可完成
赋权操作,通过 Remove selected items 可以取消某个 Subject 已经分配的权限。需要注意的
是 TRAC_ADMIN 是最大权限。同时也可以对 Subject 进行分组管理。某个组拥有的权限,
组员将会自动继承。
第 3 页 共 15 页
Trac 工具使用手册
Action 的含义,请参考 Help/Guide 中的 Permissions 一节。
4. Trac 中的 WIKI
Wiki是一个协同写作平台或者称之为开放编辑系统,即它允许所有人修改它的网页。
Wiki使用了简化的语法,替代复杂的HTML,加上WEB界面的编辑工具,降低内容维护的门槛。
Wiki的特点是方便和开放。
Wiki最适合做百科全书、知识库、整理某一个领域的知识等知识型站点,几个分在不同
地区的人利用Wiki协同工作共同写一本书等等。Wiki技术已经被较好的用在百科全书、手册
/FAQ编写、专题知识库方面。
在Trac中随处可见WIKI的影子。Trac的welcome页面,Ticket的编写等等,在整个Trac
界面中均可以使用WIKI的语法书写文档。WIKI包含自己的一套语法,采用Genshi才渲染Web
页面,或者说解释WIKI语法到HTML语法。在Trac中使用WIKI可以很方便的在线编写文档,如
点击WIKI菜单,如果你有WIKI_MODIFY权限,那么你就可以看到如下画面:
第 4 页 共 15 页
Trac 工具使用手册
红色方框部分,就显示了你可以直接在线编写这个页面,点击Edit this page出现下图:
图片中可以看到页面的源代码就在大的可编辑的输入框中展示出来。里面包含了一些特
殊的语法,如= XXX == [[BR]] * [http://trac.edgewall.org/ The Trac project]等等,
这些语法通过Genshi的解释,将变成浏览器认识的HTML代码。WIKI的具体语法请参考
Help/Guide里面的The Wiki一节。
5. Trac 中的 Roadmap
第 5 页 共 15 页
Trac 工具使用手册
Roadmap 中文翻译路线图。在 Trac 中使用 Roadmap 展现某个软件的开发过程。在
Roadmap 中,通过 Milestone 来分解软件开发的整个生命周期。多个 Milestone 就构成了一
个 Roadmap。当然一个软件交付后,在以后的维护过程中的变更、修改等都创建新的
Milestone 进行管理。界面如下:
图中的 MileStone 通过 Admin 菜单中的 Milestones 模块进行管理的,如下图:
一个 Milestone 的详细说明如下:
第 6 页 共 15 页
Trac 工具使用手册
上图中,显示一个了一个 milestone 的概要,包括
名称:完成 IM 工具开发
结束时间:2008-3-1
Due in 2 days :表示在两天后应该结束的,如果结束日期超过了 2008-3-1 将显示 late X days。
Closed tickets:表示这个 milestone 已经完成了几个 ticket。
Active tickets:表示当前还有几个 ticket 是活动的。
Total tickets:表示这个 milestone 总共有几个 ticket,包含活动的和关闭的。
点击上图中的 milestone:完成 IM 工具的开发,出现下图:
上图中的红色方框中的部分的功能为可以通过 ticket 的一些属性来分别列出此 milestone
中所有的 ticket 的在某种属性查看轴下的各种状态。
点击 Active tickets: 3 将进入如下界面:
第 7 页 共 15 页
Trac 工具使用手册
上图中显示了此 Milestone 下 3 个 Ticket。可以通过 Summary 清楚的看到每个 ticket 具
体的内容。点击#1 的 summary 后,如下图:
这部分具体的说明,请参考“Trac 中的 Ticket”。
6. Trac 中的 Timeline
Timeline 中文可译作时间线,它是以时间进度为参考轴,按时间倒序的方式显示此 trac
实例中所以的操作日志。它监控的对象包括:
WIKI 事件:创建和更改动作;
Ticket 事件:创建、更改、完成等所有的 Ticket 的事件;
第 8 页 共 15 页