附录 A. Bugzilla 常见问题解答

本 FAQ 包括指南中未涉及的问题。

1. 一般问题
A.1.1. 在哪里可以找到关于 Bugzilla 的信息?
A.1.2. Bugzilla 在什么许可证下发布?
A.1.3. 我如何获得 Bugzilla 的商业支持?
A.1.4. 目前有哪些大型公司或项目正在使用 Bugzilla 进行缺陷跟踪?
A.1.5. 谁维护 Bugzilla?
A.1.6. Bugzilla 与其他缺陷跟踪数据库相比如何?
A.1.7. 为什么 Bugzilla 不提供这个或那个特性,或者与其他跟踪软件的兼容性?
A.1.8. 为什么是 MySQL? 我有兴趣看到 Bugzilla 在 Oracle/Sybase/Msql/PostgreSQL/MSSQL 上运行。
A.1.9. 为什么脚本显示 /usr/bonsaitools/bin/perl 而不是 /usr/bin/perl 或其他东西?
A.1.10. 有没有一种简单的方法来更改 Bugzilla Cookie 名称?
2. 管理问题
A.2.1. Bugzilla 是基于 Web 的,还是必须在您的机器上安装特定的软件或特定的操作系统?
A.2.2. Bugzilla 可以与 Perforce(SCM 软件)集成吗?
A.2.3. Bugzilla 是否允许用户跟踪多个项目?
A.2.4. 如果我在多个项目上工作,并且搜索分配给我的所有错误,Bugzilla 会列出它们并允许我按项目、严重程度等进行排序吗?
A.2.5. Bugzilla 是否允许附件(文本、屏幕截图、URL 等)?如果是,是否有任何不允许的附件?
A.2.6. Bugzilla 是否允许我们定义自己的优先级和级别?我们是否可以完全自由地更改字段的标签和格式,以及可接受值的选择?
A.2.7. Bugzilla 是否提供任何报告功能、指标、图表等?你知道,管理层喜欢看到的那种东西。:)
A.2.8. 是否有电子邮件通知? 如果有,当您收到电子邮件时会看到什么?
A.2.9. 是否可以将电子邮件通知设置为发送给多人,有些人列在“收件人”列表、“抄送”列表、“密件抄送”列表等中?
A.2.10. 用户是否必须拥有任何特定类型的电子邮件应用程序?
A.2.11. Bugzilla 是否允许导入和导出数据?如果我让外部人员使用 MS Word 缺陷模板编写缺陷报告,该模板可以导入到“匹配”字段中吗?如果我想将查询结果导出到 MS Excel,我可以这样做吗?
A.2.12. 是否有人将 Bugzilla 转换为另一种语言以在其他国家/地区使用?它是否可以本地化?
A.2.13. 用户可以创建和保存报告吗?他们可以以 Word 格式执行此操作吗?Excel 格式?
A.2.14. Bugzilla 是否具有按单词、短语、复合搜索进行搜索的能力?
A.2.15. 当同时访问同一个错误时,Bugzilla 是否提供记录锁定?第二个人是否收到该错误正在使用的通知,或者他们如何收到通知?
A.2.16. 是否提供任何备份功能?
A.2.17. 用户可以在备份进行时使用该系统吗?
A.2.18. 需要哪些类型的人力资源来安装和维护 Bugzilla?具体来说,该人员需要具备哪些类型的技能?我需要了解如果我们选择使用 Bugzilla,我们需要雇用哪些类型的人员,以及与购买“开箱即用”解决方案相比,成本是多少。
A.2.19. 如果我们决定雇用人员来安装和维护 Bugzilla,我们需要多长时间?安装是否需要几个小时或几周的时间,并且每周需要几个小时来进行维护和自定义,还是这是一个为期多周的安装过程,以及 1 个人、2 个人等的全职工作?
A.2.20. 使用 Bugzilla 是否需要任何许可费或其他费用?除了上面确定的身体之外,还有其他自付费用吗?
3. Bugzilla 安全性
A.3.1. 如果 MySQL 安全性给我带来问题,我该如何完全禁用它(我已按照本指南安装部分的说明进行操作)?
A.3.2. Bugzilla 是否存在任何安全问题?
A.3.3. 我已经实施了 Chris Yeh 于 2000 年 5 月 10 日发布的安全公告中提到的安全修复程序,建议不要以 root 身份运行 MySQL,并且在 MySQL 不再正常工作时遇到了问题。
4. Bugzilla 电子邮件
A.4.1. 我有一个用户不想再收到来自 Bugzilla 的任何电子邮件。我该如何完全停止该用户的邮件?
A.4.2. 我正在评估/测试 Bugzilla,并且不想让它向我以外的任何人发送电子邮件。我该怎么做?
A.4.3. 我想让 whineatnews.pl 对更多内容进行抱怨,或者除了新错误之外的其他内容。我该怎么做?
A.4.4. 我不喜欢/不想使用 Procmail 将邮件传递给 bug_email.pl。我有哪些替代方案?
A.4.5. 如何设置电子邮件界面以通过电子邮件提交/更改错误?
A.4.6. 电子邮件需要很长时间才能从 Bugzilla 到达我这里 - 它非常慢。怎么回事?
A.4.7. 为什么来自 Bugzilla 更改的电子邮件从未到达我这里?
5. Bugzilla 数据库
A.5.1. 我听说 Bugzilla 可以与 Oracle 一起使用?
A.5.2. 我认为我的数据库可能已损坏,或包含无效条目。我该怎么办?
A.5.3. 我想手动编辑数据库中的一些条目。如何操作?
A.5.4. 我认为我已经正确设置了 MySQL 权限,但 Bugzilla 仍然无法连接。
A.5.5. 如何在多个不同的 Bugzilla 数据库之间同步错误信息?
6. Bugzilla 和 Win32
A.6.1. 在 Win32 (Win98+/NT/2K) 上运行 Bugzilla 的最简单方法是什么?
A.6.2. 是否有适用于 Win32 的等效 "Bundle::Bugzilla"?
A.6.3. CGI 失败,出现 "something.cgi 不是有效的 Windows NT 应用程序" 错误。为什么?
A.6.4. 我遇到了 NT 的 perl 模块无法与数据库通信的问题。
7. Bugzilla 用法
A.7.1. 如何在 Bugzilla 中更改我的用户名(电子邮件地址)?
A.7.2. 查询页面非常令人困惑。有没有更简单的查询方法?
A.7.3. 我对“显示错误”表单中“接受”按钮的行为感到困惑。为什么当我接受它时,它没有将错误分配给我?
A.7.4. 我无法通过“创建附件”链接将任何内容上传到数据库中。我做错了什么?
A.7.5. 一旦某些错误正在使用关键字,我该如何更改 Bugzilla 中的关键字?
8. Bugzilla 黑客
A.8.1. Bugzilla 现在有哪些错误?
A.8.2. 如何将默认优先级更改为空值?例如,使默认优先级为“---”而不是“P2”?
A.8.3. 提交补丁的最佳方式是什么?我应该遵循哪些准则?

1. 一般问题

A.1.1. 在哪里可以找到关于 Bugzilla 的信息?

您可以在 http://www.bugzilla.org/ 了解最新的 Bugzilla 信息

A.1.2. Bugzilla 在什么许可证下发布?

Bugzilla 受到 Mozilla 公共许可证的保护。请访问 http://www.mozilla.org/MPL/ 查看详细信息

A.1.3. 我如何获得 Bugzilla 的商业支持?

http://bugzilla.org/consulting.html 列出了要求我们将其列为 Bugzilla 顾问的人员和公司。

www.collab.net 将 Bugzilla 作为其为大型项目提供的标准服务的一部分。它们确实有一些非常高的最低费用,并且通常对小型项目不感兴趣。

邮件列表/新闻组上有几位经验丰富的 Bugzilla 黑客,他们愿意以丰厚的报酬提供服务。尝试向邮件列表发送消息以寻找志愿者。

A.1.4. 目前有哪些大型公司或项目正在使用 Bugzilla 进行缺陷跟踪?

几十家大型公司使用公开的 Bugzilla 站点来跟踪其产品中的错误。以下是一些例子:

Netscape/AOL
Mozilla.org
NASA
Red Hat Software
SuSe Corp
The Horde Project
AbiSource
Real Time Enterprises, Inc
Eggheads.org
Strata Software
RockLinux
Creative Labs (SoundBlaster 制造商)
The Apache Foundation
The Gnome Foundation
Ximian
Linux-Mandrake

可以说,有足够多的巨型项目在使用 Bugzilla,我们可以安全地认为它非常流行。

A.1.5. 谁维护 Bugzilla?

一个由 Dave Miller (justdave@netscape.com) 领导的 核心团队

A.1.6. Bugzilla 与其他缺陷跟踪数据库相比如何?

我们找不到任何 Bugzilla 与其他缺陷跟踪软件的直接比较。如果您知道任何比较,请联系我们。但是,根据作者使用其他错误跟踪器的个人经验,Bugzilla 在通用硬件上提供卓越的性能、更好的价格(免费!)、更友好的开发人员功能(例如存储的查询、电子邮件集成和平台独立性)、改进的可伸缩性、开源代码、更大的灵活性和卓越的易用性。

如果您碰巧是商业错误跟踪器供应商,请提供一份您的产品相对于 Bugzilla 的优势列表。我们很乐意将其包含在“竞争对手”部分中。

A.1.7. 为什么 Bugzilla 不提供这个或那个功能,或者与这个其他跟踪软件兼容?

可能是尚未构建该支持,或者您尚未找到它。 Bugzilla 在可用性、可定制性、可伸缩性和用户界面方面取得了巨大进步。它被广泛认为是现存最完整和最受欢迎的开源错误跟踪软件。

这并不意味着它不需要改进!您可以通过自己编写一个支持所需功能的补丁,或者使用 bugzilla.mozilla.org 的错误提交界面提交“增强请求 (RFE)”来帮助该项目。

A.1.8. 为什么是 MySQL? 我对在 Oracle/Sybase/Msql/PostgreSQL/MSSQL 上运行 Bugzilla 感兴趣。

最初选择 MySQL 是因为它免费、易于安装,并且可用于 Netscape 打算在其上运行的硬件。

目前正在努力使 Bugzilla 在默认发行版中与 PostgreSQL 和 Sybase 一起工作。您可以在错误 98304173130 中跟踪这些计划的进展情况。

一旦这两者都完成,添加对其他数据库服务器的支持应该很简单。

A.1.9. 为什么脚本说/usr/bonsaitools/bin/perl而不是/usr/bin/perl或其他的?

Mozilla.org 使用/usr/bonsaitools/bin/perl,因为最初 Terry 想要一个地方来放置一个严格受他控制的 Perl 和其他工具的版本。

Note

这个约定在 2.17 开发周期中被放弃了,所以当 2.18 发布时,它将不再是一个问题。

A.1.10. 有没有一种简单的方法可以更改 Bugzilla Cookie 名称?

目前,没有。

2. 管理问题

Note

经理们可能会问的问题。 :-)

A.2.1. Bugzilla 是基于 Web 的,还是必须在您的计算机上安装特定的软件或特定的操作系统?

它是基于 Web 和电子邮件的。您可以通过向正确配置的 Bugzilla 发送特殊格式的电子邮件来编辑错误,或者通过 Web 进行控制。

A.2.2. Bugzilla 可以与 Perforce (SCM 软件) 集成吗?

可以! 您可以在“Bugzilla 指南”中的“与第三方产品集成”部分找到更多信息。

A.2.3. Bugzilla 是否允许用户跟踪多个项目?

当然!您可以跟踪任意数量的产品,每个产品都可以由任意数量的组件组成。

Note

在 Bugzilla 的 2.16 版本中只有 55 个组可用。如果您使用的是产品组,这也将限制您可以拥有的产品数量。此限制在当前的 2.17 开发版本中不存在,并且在 2.18 中也不会存在。

A.2.4. 如果我参与了许多项目,并且搜索分配给我的所有错误,Bugzilla 会为我列出它们并允许我按项目、严重性等进行排序吗?

是的。

A.2.5. Bugzilla 是否允许附件(文本、屏幕截图、URL 等)? 如果是,是否有任何不允许的附件?

是的 - 允许任何类型的附件,尽管管理员可以配置最大大小。 Bugzilla 为用户提供了以下选项:使用浏览器提供的 MIME 类型、从预定义的列表中选择或手动键入任何任意 MIME 类型。

A.2.6. Bugzilla 是否允许我们定义自己的优先级和级别? 我们是否可以完全自由地更改字段的标签和格式,以及可接受的值的选择?

是的。 但是,修改某些字段(特别是与错误进展状态相关的字段)还需要调整程序逻辑以补偿更改。

目前没有用于向 Bugzilla 添加字段的 GUI。您可以在 http://bugzilla.mozilla.org/show_bug.cgi?id=91037 上关注此功能的开发。

A.2.7. Bugzilla 是否提供任何报告功能、指标、图表等? 您知道,管理层喜欢看到的那种东西。 :)

是的。 请查看 http://bugzilla.mozilla.org/reports.cgi,了解 Bugzilla 在报告和绘图方面可以做什么的示例。

如果您无法从包含的报告脚本中获得所需的报告,则可以使用 ODBC 连接专业的报告包,例如 Crystal Reports。 如果您选择这样做,请注意直接访问数据库确实包含一些安全隐患。 即使您授予对错误数据库的只读访问权限,它也会绕过 Bugzilla 的安全错误功能。

Note

Bugzilla 的当前开发版本可以在报告方面做更多的事情。 要查看示例,请查看 http://bugzilla.mozilla.org/report.cgi

A.2.8. 是否有电子邮件通知? 如果有,当您收到电子邮件时会看到什么?

电子邮件通知是用户可配置的。 默认情况下,错误报告的错误 ID 和摘要以及所做的更改列表会随每个电子邮件通知一起发送。

A.2.9. 是否可以设置电子邮件通知以发送给多个人,其中一些人在收件人列表、抄送列表、密件抄送列表等中?

是的。

A.2.10. 用户是否必须拥有任何特定类型的电子邮件应用程序?

Bugzilla 电子邮件以纯文本格式发送,这是地球上最具兼容性的邮件格式。

Note

如果您决定使用 bugzilla_email 集成功能以允许 Bugzilla 记录对与关联错误相关的邮件的响应,您可能需要提醒您的用户将其邮件程序设置为“以邮件发送的格式响应邮件”。 出于安全原因,Bugzilla 会忽略评论中的 HTML 标签,并且如果用户将基于 HTML 的电子邮件发送到 Bugzilla 中,则生成的评论看起来非常糟糕。

A.2.11. Bugzilla 是否允许导入和导出数据? 如果我让外部人员使用 MS Word 错误模板编写错误报告,是否可以将该模板导入到“匹配”字段中? 如果我想获取查询结果并将该数据导出到 MS Excel,我可以这样做吗?

在 2.16 版本中,Bugzilla 只能以 HTML 格式输出错误列表。 在较新的开发版本中还有其他格式可用(CSV 和 RDF)。

Bugzilla 可以使用xml.cgi导出错误,可以使用错误编号或错误编号列表。

目前 Bugzilla 中包含的唯一可以导入数据的脚本是importxml.pl它旨在用于导入由xml.cgi生成的数据,与错误移动相关联。 任何其他用途都留给用户自己练习。

中还包含脚本contrib/目录用于使用电子邮件将信息导入 Bugzilla,但这些脚本目前不受支持,仅用于教育目的。

A.2.12. 有人将 Bugzilla 转换为另一种语言以在其他国家/地区使用吗? 它可以本地化吗?

是的。 有关更多信息(包括可用的翻译模板),请参阅 http://www.bugzilla.org/download.html#localizations。 管理界面仍未包含在这些翻译模板中,因此仍然只有英文版本。 此外,字符集可能存在问题,没有声明。 请参阅 bug 126226 了解更多信息。

A.2.13. 用户可以创建和保存报告吗? 他们可以用 Word 格式执行此操作吗? Excel 格式?

是的。 没有。 在 2.16 中不行。

A.2.14. Bugzilla 是否能够按单词、短语、复合搜索进行搜索?

您不知道。 Bugzilla 的查询界面,特别是使用高级布尔运算符时,非常通用。

A.2.15. 当同时访问同一错误时,Bugzilla 是否提供记录锁定? 第二个人是否会收到错误正在使用的通知,或者他们如何收到通知?

Bugzilla 不锁定记录。 它提供空中冲突检测,并为违规用户提供一系列选项来处理冲突。

A.2.16. 是否提供了任何备份功能?

MySQL,Bugzilla 的数据库后端,允许热备份数据。 您可以在 https://mysqlserver.cn/doc/B/a/Backup.html 上找到处理备份注意事项的策略

A.2.17. 在备份进行时,用户可以在系统上吗?

是的。 但是,对数据库的提交必须等到表被解锁。 Bugzilla 数据库通常非常小,并且备份通常只需不到一分钟的时间。

A.2.18. 需要哪些类型的人力资源人员在职来安装和维护 Bugzilla? 具体来说,这个人需要具备哪些类型的技能? 我需要找出如果我们要使用 Bugzilla,我们需要雇用哪些类型的人员,以及与购买“开箱即用”的解决方案相比,这将花费多少钱。

如果 Bugzilla 从一开始就正确设置,那么持续维护需求是最小的,并且可以使用 Web 界面轻松完成。

商业错误跟踪软件通常花费 20,000 美元或更多来获得 5-10 个浮动许可证。 可以从新闻组中的熟练成员那里获得 Bugzilla 咨询。 简单的问题可以在那里立即得到回答。

A.2.19. 如果我们决定雇人来安装和维护 Bugzilla,需要多长时间?是需要几个小时或几周来安装,然后每周花费几个小时来维护和定制,还是需要花费数周时间来安装,外加一个人或几个人全职工作?

这完全取决于你的投入程度。有丰富 Bugzilla 经验的人可以在一天之内让你启动并运行起来,并且你的 Bugzilla 安装可以多年无人照管。如果你的 Bugzilla 策略对你的业务流程至关重要,那么请雇用具有合理 UNIX 或 Perl 技能的人来处理你的流程管理和 Bug 跟踪维护与定制。

A.2.20. 使用 Bugzilla 是否有任何许可费或其他费用?除了上面确定的人力成本外,还有其他支出吗?

没有。MySQL 建议,如果你认为他们的产品有价值,那么你可以购买一份满足你需求的他们的支持合同。

3. Bugzilla 安全性

A.3.1. 如果 MySQL 给我带来问题(我已经按照本指南安装部分的说明操作),我如何完全禁用 MySQL 安全性?

像这样运行 MySQL:"mysqld --skip-grant-tables"。请记住,这使得 MySQL 的安全性就像把 100 美元钞票用胶带粘在足球场厕所的地板上保管一样。

A.3.2. Bugzilla 是否存在任何安全问题?

Bugzilla 代码已经过相当完整的安全审计,并且面向用户的 CGI 在 Perl 的 taint 模式下运行。但是,建议你仔细检查 Bugzilla 安装的权限,并遵循 Bugzilla 指南中推荐的安全准则。

A.3.3. 我已经实施了 Chris Yeh 在 2000 年 5 月 10 日的安全公告中提到的安全修复程序,建议不要以 root 身份运行 MySQL,并且遇到了 MySQL 无法正常工作的问题。

这是一个常见问题,与文件描述符耗尽有关。只需将 "ulimit -n unlimited" 添加到启动 mysqld 的脚本中即可。

4. Bugzilla 电子邮件

A.4.1. 我有一个用户不想再收到 Bugzilla 的任何电子邮件。我如何完全停止向该用户发送邮件?

用户应该可以在用户电子邮件首选项中设置此选项(取消选中所有框),或者你可以将他们的电子邮件地址添加到data/nomail文件中。

A.4.2. 我正在评估/测试 Bugzilla,并且不想向除我之外的任何人发送电子邮件。我该怎么做?

编辑 "newchangedmail" 参数。将 "To:" 替换为 "X-Real-To:",将 "Cc:" 替换为 "X-Real-CC:",并添加 "To: <你的电子邮件地址>"。

A.4.3. 我希望 whineatnews.pl 能够在更多的事情上,或者除了新 bug 之外的事情上发出警告。我该怎么做?

尝试 Klaas Freitag 出色的 "whineatassigned" 功能补丁。你可以在 http://bugzilla.mozilla.org/show_bug.cgi?id=6679 找到它。此补丁是针对旧版本的 Bugzilla,因此你必须手动应用差异。

A.4.4. 我不喜欢/不想使用 Procmail 将邮件传递给 bug_email.pl。我有哪些替代方案?

你可以直接从你的 aliases 文件中调用 bug_email.pl,条目如下:

bugzilla-daemon: "|/usr/local/bin/bugzilla/contrib/bug_email.pl"

但是,这相当糟糕并且容易出现问题;你还需要设置你的 smrsh(sendmail restricted shell)以允许它。尽管如此,在紧急情况下,它可以工作。

A.4.5. 我如何设置电子邮件界面以通过电子邮件提交/更改 bug?

你可以在你的 Bugzilla 发行版的 contrib/ 目录中找到更新的 README.mailif 文件,该文件将引导你完成设置。

A.4.6. 来自 Bugzilla 的电子邮件需要很长时间才能到达我这里 -- 它非常慢。这是怎么回事?

如果你使用的是备用邮件传输代理 (MTA,而不是 sendmail),请确保所有 "sendmail" 实例的 "processmail" 和其他脚本中给出的选项对于你的 MTA 是正确的。

如果你使用的是 Sendmail,请尝试在 editparams.cgi 中启用 "sendmailnow"。 如果你使用的是 Postfix,你还需要启用 "sendmailnow"

A.4.7. 为什么来自 Bugzilla 更改的电子邮件从未到达我这里?

仔细检查你是否在用户首选项中关闭了电子邮件。 通过访问你的 Bugzilla 安装的“登录”链接,并在输入你的电子邮件地址后单击“通过电子邮件发送给我密码”按钮,确认 Bugzilla 能够发送电子邮件。

如果你从未收到来自 Bugzilla 的邮件,那么你很可能没有在 "/usr/lib/sendmail" 中安装 sendmail。 确保 sendmail 存在于 "/usr/lib/sendmail" 中,或者符号链接到该位置。

5. Bugzilla 数据库

A.5.1. 我听说 Bugzilla 可以与 Oracle 一起使用?

Red Hat 的旧版本 Bugzilla(基于 2.8)可以在 Oracle 上运行。 Red Hat 的较新版本(基于 2.17.1,很快将合并到主发行版中)在 PostgreSQL 上运行。 目前,我们不知道最近是否有将 Bugzilla 移植到 Oracle 的版本,但我们确实计划在将来支持它(可能在 2.20 时间范围内)。

A.5.2. 我认为我的数据库可能已损坏,或包含无效条目。 我该怎么办?

运行 "sanity check" 实用程序(./sanitycheck.cgi在 Bugzilla_home 目录中),从你的 Web 浏览器查看! 如果它完成时没有错误,那么你可能没问题。 如果它没有返回 OK(即任何红色字母),Bugzilla 可以从中恢复某些内容,而无法恢复某些内容。 如果它无法自动恢复,我希望你熟悉 mysqladmin 命令或已安装另一种管理数据库的方式。 Sanity Check 虽然是对你的数据库完整性进行良好基本检查,但绝不能替代有能力的数据库管理和避免删除数据。 它并不详尽,创建它的目的是对 Bugzilla 数据库中最常见的问题进行基本检查。

A.5.3. 我想手动编辑数据库中的一些条目。 怎么做?

Bugzilla 本身没有提供此功能。 如果你不知道自己在做什么,这通常也不是明智之举。 但是,如果你了解 SQL,则可以使用 mysql 命令行实用程序手动插入、删除和修改表信息。 还有更直观的 GUI 客户端可用。 Bugzilla 团队个人最喜欢的是 phpMyAdminMySQL Control Center

A.5.4. 我认为我已经正确设置了 MySQL 权限,但 Bugzilla 仍然无法连接。

尝试从其二进制文件运行 MySQL:"mysqld --skip-grant-tables"。 这将允许你完全排除 grant 表作为你沮丧的原因。 如果此时 Bugzilla 能够连接,那么你需要检查是否已向localconfig.

Warning

中定义的用户密码组合授予了适当的权限。 使用此命令行选项运行 MySQL 非常不安全,仅应在未连接到外部网络时作为故障排除步骤进行操作。

A.5.5. 如何在多个不同的 Bugzilla 数据库之间同步 bug 信息?

好吧,你可以同步或移动 bug。 同步仅以一种方式工作 - 你可以在一个站点创建一个数据库的只读副本,并使其定期从主数据库以一定间隔更新。

MySQL 在最新版本中内置了一些同步功能。 如果有人研究一下其中的可能性,并向新闻组提供一份关于如何有效同步两个 Bugzilla 安装的报告,那就太好了。

如果你只需要将 bug 从一个 Bugzilla 转移到另一个 Bugzilla,请查看 Bugzilla 发行版中的 "move.pl" 脚本。

6. Bugzilla 和 Win32

A.6.1. 在 Win32 (Win98+/NT/2K) 上运行 Bugzilla 的最简单方法是什么?

删除 Windows。 安装 Linux。 安装 Bugzilla。 老板永远不会知道其中的区别。

A.6.2. 是否有适用于 Win32 的 "Bundle::Bugzilla" 等效项?

目前没有。 Bundle::Bugzilla 极大地简化了 UNIX 系统上的 Bugzilla 安装。 如果有人可以自愿为 Win32 创建合适的 PPM 包,我们将不胜感激。

A.6.3. CGI 失败并显示 "something.cgi 不是有效的 Windows NT 应用程序" 错误。 为什么?

根据你使用的 Web 服务器,你必须配置 Web 服务器将 *.cgi 文件视为 CGI 脚本。 在 IIS 中,你可以通过将 *.cgi 添加到应用程序映射中,并将 <path>\perl.exe %s %s 作为可执行文件来执行此操作。

Microsoft 也就此事提供了一些建议:

"设置应用程序映射。 在 ISM 中,将脚本文件的扩展名映射到脚本解释器的可执行文件。 例如,你可以将扩展名 .py 映射到 Python.exe,即 Python 脚本解释器的可执行文件。 注意 默认情况下,对于 ActiveState Perl 脚本解释器,扩展名 .pl 与 PerlIS.dll 关联。 如果你想将 .pl 的关联更改为 perl.exe,则需要更改应用程序映射。 在映射中,你必须在 perl.exe 的路径名末尾添加两个百分比 (%) 字符,如本例所示: c:\perl\bin\perl.exe %s %s"

A.6.4. 我在 NT 的 perl 模块无法与数据库通信时遇到问题。

你的模块可能已过时或不准确。 尝试

  1. 访问 http://www.activestate.com/ActivePerl

  2. 下载 ActivePerl

  3. 转到你的提示符

  4. 键入 'ppm'

  5. PPM> install DBI DBD-mysql GD

我认为 TimeDate 和 Data::Dumper 随 activeperl 一起提供。 你可以查看 ActiveState 站点,以获取通过 PPM 安装的软件包。 http://www.activestate.com/Packages/

7. Bugzilla 使用

A.7.1. 如何在 Bugzilla 中更改我的用户名(电子邮件地址)?

2.16 中的新增功能 - 转到首选项的“帐户”部分。 你将收到两封地址的电子邮件以进行确认。

A.7.2. 查询页面非常令人困惑。 有没有更简单的查询方法?

界面已由 UI 设计师为 2.16 简化。 欢迎提出进一步的改进建议,但我们不会为了简单而牺牲功能。

A.7.3. 我对“显示 Bug”表单中“接受”按钮的行为感到困惑。 为什么我接受 bug 时它不会将 bug 分配给我?

当前行为对于 bugzilla.mozilla.org 和大多数用户来说是可以接受的。 但是,你可以选择修改此行为的补丁。

添加一个“并接受 bug”单选按钮
“接受”按钮自动分配给你

请注意,这些补丁有些过时。 你需要手动应用它们。

A.7.4. 我无法通过“创建附件”链接将任何内容上传到数据库。我做错了什么?

最可能的原因是您的浏览器版本过旧,或者您的浏览器与通过 POST 上传文件不兼容。请下载最新版本的 Netscape、Microsoft 或 Mozilla 浏览器以正确处理上传。

A.7.5. 一旦某些 Bug 已经使用了关键词,如何在 Bugzilla 中更改关键词?

在 Bugzilla 管理员 UI 中,编辑该关键词,它将允许您用新的关键词名称替换旧的关键词名称。这会导致关键词缓存出现问题。运行 sanitycheck.cgi 来修复它。

8. Bugzilla 黑客技术

A.8.1. Bugzilla 现在有哪些 Bug?

尝试 这个链接 以查看当前 Bug 或 Bugzilla 的增强请求。

您可以 在这里 查看标记为 2.18 版本的 Bug。此列表包括已修复并已检入 CVS 的 2.18 版本的 Bug。请查阅 Bugzilla 项目页面,了解如何从 CVS 检出当前源代码,以便您可以尽早获得这些 Bug 修复!

A.8.2. 如何将默认优先级更改为空值?例如,让默认优先级为“---”而不是“P2”?

这已在此处得到充分记录: http://bugzilla.mozilla.org/show_bug.cgi?id=49862。最终,只需将“---”优先级字段添加到 localconfig 文件中的相应区域,重新运行 checksetup.pl,然后使用“editparams.cgi”在浏览器中更改默认优先级即可。

A.8.3. 提交补丁的最佳方式是什么?我应该遵循哪些准则?

  1. 在 bugzilla.mozilla.org 中为 "Bugzilla" 产品输入一个 Bug。

  2. 通过点击您刚刚创建的 Bug 页面上的“创建新附件”链接,将您的补丁作为统一差异 (使用 "diff -u" 命令针对从 CVS 检出的当前源代码) 上传,或上传新的源文件,并将您可能进行的任何数据库更改的描述包含到您在步骤 #1 中提交的 Bug ID 中。请务必选中“补丁”复选框,以表明您发送的文本是补丁!

  3. 在新闻组 (netscape.public.mozilla.webtools) 中宣布您的补丁和相关 URL (http://bugzilla.mozilla.org/show_bug.cgi?id=XXXXXX) 以进行讨论。您将获得对您的补丁的影响非常好的,相当直接的反应,这也将使我们了解该更改的接受程度。

  4. 如果它通过了最低限度的修改,Bugzilla 中分配给该 Bug 的人有责任确保该补丁已检入 CVS。

  5. 沉浸在您帮助编写了地球上最成功的开源错误跟踪软件的光荣中 :)