2007年9月10日星期一

Trac on Apache - 使用说明

Trac on Apache - 使用说明

说明

以下将会简单介绍 Trac 的使用方式,这里是以 0.10.3 版为基础。另外本文仅供初入门的朋友参考,因为我个人也还在学习中。

操作介面

Trac 主要由四个区块组成:搜寻、使用者工具、功能选单及内容页。
搜寻

这里可以搜寻所有记在 Trac 资料库里的资讯,像是 Wiki 、 Changesets 或 Tickets 等等。
使用者工具

包含登入登出功能、使用者资讯修改介面及求助文档。
功能选单

Trac 主要功能的选单, 像是 Wiki 、 Timeline 或 Roadmap 等等。
内容页

上面的使用者工具或是功能选单如果有相关画面的话,就会在这里呈现。
主要功能简述

Trac 的重点在於记录专案相关历程,方便管理者或开发人员追踪之用。以下将对相关的功能做简单的描述。

注:我会简单的以意义而非直译来翻译里面的专有名词,不过可能会和业界所公认的有所不同;如果大家有比较好的建议,欢迎告知。
Wiki

Wiki (记事) 通常是用来记录专案的相关说明,像是开发目的、版本演进说明、程式架构与功能等。 Trac 内建的 Wiki 包含很多实用的功能,像是 提供连结到 Milestone 、 Ticket 等相关页面的语法,也可以自行扩充 Marco 与 Processor 。

Wiki 的详细说明可参考 http://trac.edgewall.org/wiki/TracWiki

注:在新建每个专案时, Trac 都会自动帮我们建立相关的求助文档,这也是用 TracWiki 制作的。
Timeline

Timeline (历程) 会显示专案所有变动,包含程式码的修改、 Wiki 更新、新增 Ticket 或 Milestone 等。我们可以在其右上方的控制板上选择日期范围或是资讯类型,来显示符合条件的变动。

另外这里的内容是不可更改的,因为它们已经是历史了。
Roadmap

Roadmap (指标) 是 Milestone (里程碑) 的集合体,而 Milestone 也可以是 Ticket (编修项目) 的集合体 (非必要) 。

Roadmap 主要的功能是让管理者很清楚的掌握专案的进度;当所有 Milestone 完成後,专案即宣告结束。
Browse Source

因为我们安装的 Trac 是搭配 Subversion ,因此这里可以直接浏览专案 SVN 档案库里的所有资讯。而且这里也可以简单比对出版本之间的差异;这个功能可以让我们在撰写 ChangeLog 时,直接连结引用。

注: Trac 预设是 UTF-8 编码,所以 Source 里面有用到 Big5 编码的话,在这里会看到乱码。解决的方式是在 trac.ini 里,将 trac 区段的 default_charset 改为 big5 。
View Tickets

依分类列出所有编修项目的报告,这可以方便管理者整理出给客户的报表 (可汇出 CSV 格式的文字档) 。 Trac 已预设提供多个实用的报告类型,不过管理者也可以以 SQLite 的 SQL 语法来建立属於自己的报告类型。
New Ticket

建立一个编修项目,预设有 defect (缺失) 、 enhancement (功能加强) 及 task (工作) 等三种类型。

*

defect:就是一般我们所说的 Bug 。
*

enhancement:原先没有规划的功能,或是客户建议改进的部份。
* task :专案中预期应该要制作的项目。

这里的 Full description 可以使用 TracWiki 语法。

而 Ticket 也有以下属性可供设定:

*

Priority: 优先顺序,预设为 major 。
*

Milestone: 里程碑。
*

Component: 所属元件。
*

Version: 所属版本。
*

Severity: 严重性。
*

Keywords: 关键字。
*

Assign to: 指定给某使用者。
* Cc: 给某使用者一个副本。

另外最下方我们也可以为这个 Ticket 附加相关的档案。
Search

上方 Search 区块的进阶版,多了 Wiki 、 Changesets 或 Tickets 的勾选项目;这里同时也是呈现搜寻结果的页面。
Admin

在安装 WebAdmin 这个 Plugin 後就会多出来的功能,以下会再深入介绍。
管理项目

在 Admin 功能中,如果有依照前面的步骤安装了 WebAdmin 、 Account Manager 及 IniAdmin 等 Plugin 的话,就会出现以下选单项目:

* Accounts
o Configuration
o Users
* General
o Basic Settings
o Logging
o Permissions
o Plugins
* Ticket System
o Components
o Milestones
o Priorities
o Severities
o Ticket Types
o Versions
* trac.ini

一般来说,在这里调整相关设定後,只需要重新登入即可套用变更的设定。不过其中还是有一些设定需要重新启动 Apache ,请特别小心。

注:这里我会略过 trac.ini ,因为大部份需要调整的部份都已经在上面三个大项里了。
Accounts / Configuration

这里可以设定要存取的 Apache 帐号密码档,即为前一篇里的 D:\Repository\project-users.db 。
Accounts / Users

这里会列出 D:\Repository\project-users.db 里所有使用者的帐号,右边的控制板可以让我们新增使用者。
General / Basic Settings

这里可以设定专案的相关资讯,包含专案名称、网址及简述。
General / Logging

这里可以设定 Trac Log 记录的地方,可以是档案或是 Windows 事件里。这里的设定变更後,需要重新启动 Apache 。
General / Permissions

这里会列出所有使用者的权限,右边的控制板则可以设定使用者的权限,而且也可以新增一个群组或是把使用者加入一个群组。
General / Plugins

这里会列出 Trac 已载入的 Plugins ,在 Plugin 的名称上点一下可看到细部元件的启用状况。

另外可以利用档案上传的方式来安装 Plugin ,这样似乎是仅能让该专案使用,而且可以移除;如果该 Plugin 是利用第一篇提到的方式安装的话,似乎就没办法移除。(这里用「似乎」一词是因为我试过但没成功,还望各位先进指导。)
Ticket System / Components

Components (元件) 会列出专案中会用到的独立元件,像是类别库或 JS 库等等。每个 component 都可以为它们指定一个 owner (拥有者) ,以供开发协调用。任意点选一个 component 的名称後即可修改它,这里的 Description 可以使用 TracWiki 语法。

如果专案里不需要 Components 的话,可以把预设的 component1 和 component2 移除。

注:在 Ticket System 中的所有子选单中如果把所有项目移除,那麽在 New Ticket 时,其对应的下拉选单就会自动隐藏。 (以下皆适用。)
Ticket System / Milestones

Milestones (里程碑) 会列出专案的所有里程碑,这里管理者可以建立一个新的 milestone ,并且指定预定的到期日 (Due) 。 和 Components 一样,任意点选一个 milestone 的名称後即可修改它,并填写它真正完成的日期。
Ticket System / Priorities

Priorities (优先顺序) 会列出专案中所定义的优先顺序,这里管理者可以建立一个新的 priority ,并且指定它的顺序 (Order) 。
Ticket System / Severities

Severities (严重性) 会列出专案中所定义的严重性,如同 Priorities ,这里管理者可以建立一个新的 severity ,并且指定它的顺序 (Order) 。
Ticket System / Ticket Types

Ticket Types (编修项目类型) 会列出专案中所定义的编修项目类型,如同 Priorities ,这里管理者可以建立一个新的 ticket type ,并且指定它的顺序 (Order) 。
Ticket System / Versions

Versions ( 版本) 会列出专案的所有版本,要注意的是这些版本是管理员自行决定的,而非版本控制系统提供。这里管理者可以新增一个新版本,并填写预计发布日期。任意点选一个 版号後即可修改它,这里的 Description 可以使用 TracWiki 语法。
参考流程

Trac 并没有硬性规定它的用法,大家可以依照上面的说明自行决定要如何使用。以下我提供一个简单的使用流程供大家参考:

1.

管理者设定相关使用者权限。
2.

管理者在 Wiki 中撰写专案目的。
3.

管理者依序建立 Version 、 Milestone 。
4.

管理者建立 Task 并指派给开发者。
5.

开发者进行专案建置,此时开发者可利用 Subversion 提交程式码。
6.

由客户或 PM 提供 defect 或 enhancement 。
7.

开发者依照 Ticket 的严重性或优先顺序继续进行程式修改。
8.

管理者依照进度调整 Version 及 Milestone ,并视状况撰写 Wiki 以供备忘。
9.

重复步骤 3 到步骤 8 ,直到专案结束。

注:请利用想像力,把这些步骤看成是多人同时执行的状态。

以上流程欢迎补充。

原文链接:http://blog.roodo.com/jaceju/archives/2772843.html

没有评论: